Sample code – ADLINK cPCI-6520 User Manual

Page 72

Advertising
background image

60

Utilities

Sample Code

The sample program written in C shown below offers an interac-
tive way to test the Watchdog Timer under DOS.

#include<stdio.h>

#include<dos.h>

static unsigned int W83627UHG_ioPort = 0x2e;

void Enter_W83627UHG_Config(unsigned int flag)

{

if(flag) W83627UHG_ioPort = 0x4e;

outportb(W83627UHG_ioPort, 0x87);

outportb(W83627UHG_ioPort, 0x87);

}

void Get_W83627UHG_ID(unsigned int &ID1, unsigned int

&ID2)

{

outportb(W83627UHG_ioPort, 0x20);

ID1 = inportb(W83627UHG_ioPort+1);

outportb(W83627UHG_ioPort, 0x21);

ID2 = inportb(W83627UHG_ioPort+1);

}

void W83627UHG_WDT_Run(unsigned int count_value, unsigned

int PLEDflag)

{

unsigned int tempCount, registerValue;

outportb(W83627UHG_ioPort, 0x07);

outportb(W83627UHG_ioPort+1, 8); // CR07 set Logical

Device 8

if(count_value >= 60)

{

outportb(W83627UHG_ioPort, 0xf5);

registerValue = inportb(W83627UHG_ioPort+1);

registerValue |= 0x04;

outportb(W83627UHG_ioPort+1, registerValue); /

/ set Minute mode

Advertising