User manual

UNO-1019 User Manual 62
#define IOCTL_WDT_REBOOT
CTL_CODE(FILE_DEVICE_UNKNOWN, 0x905,
METHOD_BUFFERED, FILE_ANY_ACCESS)
HANDLE m_hWDT=NULL;
TCHAR szClassName[60];
// assign the WDT driver name
wsprintf(szClassName, TEXT("WDT1:"));
// Open the WDT driver
m_hWDT = CreateFile(szClassName,
GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_EXISTING,
FILE_ATTRIBUTE_NORMAL, NULL);
if ( m_hWDT == INVALID_HANDLE_VALUE ) {
DebugMsg(CString("WDT driver fail"));
return;
}
DWORD dwTemp;
DWORD nIndex=2;
// Set the Watchdog Timer as 10 seconds. Number 2 means 10 seconds.
DeviceIoControl(m_hWDT, IOCTL_WDT_SET_TIMEOUT, &nIndex,
sizeof(nIndex), NULL, 0, &dwTemp, NULL);
// Enable the Watchdog timer
DeviceIoControl(m_hWDT, IOCTL_WDT_ENABLE, NULL, 0, NULL,
0, &dwTemp, NULL);
// Activate timeout reboot
DeviceIoControl(m_hWDT, IOCTL_WDT_REBOOT, NULL, 0, NULL,
0, &dwTemp, NULL);