IO Device:852DioNTDriver version

From LEXWiKi

Revision as of 14:10, 3 August 2009 by PattyChen (Talk | contribs)
Jump to: navigation, search


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

852Dio_v1.0w_NTdriver_src.rar

852Dio_v1.0w_NTdriver_Bin.rar

How to install the NT driver

1. Download the installer DriverInstaller.rar

2. Double click the DriverInstaller.exe file.

3. After install the driver , OS will reboot automatically.

4. After reboot , you can check if the driver install success or not by following steps.

Image:dev1.jpg

Image:dev2.jpg


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