IO Device:852DioNTDriver version

From LEXWiKi

(Difference between revisions)
Jump to: navigation, search

Revision as of 01:40, 1 August 2009


Contents

Introduction

Define Pin Address

   #define WDT_ENABLE 0x600
   #define WDT_DISABLE 0x604
   #define DO 0x60C
   #define DI 0x608

Set DO

   DWORD dwOutput;  //write data 1 to DO port
   DWORD DoCheckLowBuffer[2] = { DO , 1 };
   DeviceIoControl( hDevice , WRITE_PORT , DoCheckLowBuffer , sizeof(DoCheckLowBuffer) , NULL , 0 , &dwOutput , NULL);

Read DI/DO

   DWORD DiCheckLowOutBuffer; //read DI data
   DWORD DiCheckLowInBuffer[1] = { DI };
   DeviceIoControl( hDevice , READ_PORT , DiCheckLowInBuffer , sizeof(DiCheckLowInBuffer) , &DiCheckLowOutBuffer , 
                           sizeof(DiCheckLowOutBuffer) , &dwOutput , NULL);

Enable WDT

   DWORD WdtEnableBuffer[2] = { WDT_ENABLE , 1 };  //set 1 sec to WDT enable port, system will reboot after 1 second 
   DeviceIoControl(hDevice, WRITE_PORT, WdtEnableBuffer , sizeof(WdtEnableBuffer), NULL, 0, &dwOutput, NULL);

Disable WDT

   //set 1 sec to WDT disable port , the disable signal will break off WDT enable signle
   DWORD WdtDisableBuffer[2] = { WDT_DISABLE , 1 }; 
   DeviceIoControl(hDevice, WRITE_PORT, WdtDisableBuffer, sizeof(WdtDisableBuffer), NULL, 0, &dwOutput, NULL);

The Sample code source you can download from

How to use this Demo Application

1. Press the "Start" button to test DIO function

2. Press the "Enable" button to test WDT function

3. Press the "Disable" button when WDT enable to disable WDT

Image:852_dio_ap.jpg

Personal tools