
TDRV003-SW-65 – Windows Device Driver Page 3 of 59
Table of Contents
1 INTRODUCTION......................................................................................................... 4
2 INSTALLATION.......................................................................................................... 5
2.1 Software Installation .......................................................................................................................5
2.1.1 Windows 2000 / XP..............................................................................................................5
2.1.2 Windows 7............................................................................................................................6
2.2 Confirming Driver Installation .......................................................................................................6
3 DRIVER CONFIGURATION ....................................................................................... 7
3.1 Event Queue Configuration ...........................................................................................................7
4 API DOCUMENTATION ............................................................................................. 8
4.1 General Functions...........................................................................................................................8
4.1.1 tdrv003Open ........................................................................................................................8
4.1.2 tdrv003Close ......................................................................................................................10
4.2 Device Access Functions.............................................................................................................12
4.2.1 tdrv003InputRead...............................................................................................................12
4.2.2 tdrv003OutputWrite ............................................................................................................14
4.2.3 tdrv003OutputRead............................................................................................................16
4.2.4 tdrv003OutputWriteMask ...................................................................................................18
4.2.5 tdrv003OutputSetBits .........................................................................................................20
4.2.6 tdrv003OutputClearBits......................................................................................................22
4.2.7 tdrv003EventWait...............................................................................................................24
4.2.8 tdrv003DebouncerEnable ..................................................................................................26
4.2.9 tdrv003DebouncerDisable .................................................................................................28
4.2.10 tdrv003WatchdogEnable ...............................................................................................30
4.2.11 tdrv003WatchdogDisable...............................................................................................32
4.2.12 tdrv003WatchdogReset .................................................................................................34
5 DEVICE DRIVER PROGRAMMING ......................................................................... 36
5.1 TDRV003 Files and I/O Functions................................................................................................36
5.1.1 Opening a TDRV003 Device..............................................................................................36
5.1.2 Closing a TDRV003 Device ...............................................................................................38
5.1.3 TDRV003 Device I/O Control Functions ............................................................................39
5.1.3.1 IOCTL_TDRV003_READ ...........................................................................................41
5.1.3.2 IOCTL_TDRV003_WRITE .........................................................................................42
5.1.3.3 IOCTL_TDRV003_OUTPUTGET...............................................................................44
5.1.3.4 IOCTL_TDRV003_WRITEMASK ...............................................................................46
5.1.3.5 IOCTL_TDRV003_OUTPUTSETBITS .......................................................................48
5.1.3.6 IOCTL_TDRV003_OUTPUTCLEARBITS ..................................................................50
5.1.3.7 IOCTL_TDRV003_WAIT_EVENT ..............................................................................52
5.1.3.8 IOCTL_TDRV003_DEBENABLE ...............................................................................54
5.1.3.9 IOCTL_TDRV003_DEBDISABLE ..............................................................................56
5.1.3.10 IOCTL_TDRV003_WDENABLE...............................................................................57
5.1.3.11 IOCTL_TDRV003_WDDISABLE..............................................................................58
5.1.3.12 IOCTL_TDRV003_WDRESET .................................................................................59