File: INCLUDE\HARDWARE\DCBraunPSD_IOCTL.h

    1 
    2 // {B0338401-574B-478a-AB1D-DC209872758E}
    3 DEFINE_GUID(DCB_INTERFACE_GUID, 0xb0338401, 0x574b, 0x478a, 0xab, 0x1d, 0xdc, 0x20, 0x98, 0x72, 0x75, 0x8e);
    4 
    5 
    6 //The IOCTL function codes from 0x800 to 0xFFF are for customer use.
    7 #define IOCTL_DC_REPORT_ID CTL_CODE( DCEV_TYPE,  0x900, METHOD_BUFFERED, FILE_READ_ACCESS) 
    8 //      liefert id des dazugehörigen ASA-Controllers zurück
    9 
   10 #define IOCTL_DC_READ_BYTE CTL_CODE( DCEV_TYPE, 0x901, METHOD_BUFFERED, FILE_READ_ACCESS) 
   11 //      Set Wait For Ready Cycles --> ersetzt ASA.DLL GetPort()
   12 
   13 #define IOCTL_DC_WRITE_BYTE CTL_CODE( DCEV_TYPE,  0x902, METHOD_BUFFERED, FILE_WRITE_ACCESS) 
   14 //      Set Wait For Ready Cycles --> ersetzt ASA.DLL SetPort()
   15 
   16 #define IOCTL_DC_SET_WFR_CYCLES CTL_CODE( DCEV_TYPE,  0x903, METHOD_BUFFERED, FILE_WRITE_ACCESS) 
   17 //      Set Wait For Ready Cycles --> ersetzt ASA.DLL SetTimeOut()
   18 //      ein ULONG im Systembuffer übergeben mit Zyklenanzahl
   19 
   20 #define IOCTL_DC_GET_DATA CTL_CODE( DCEV_TYPE,  0x904, METHOD_BUFFERED, FILE_WRITE_ACCESS) 
   21 //      Get Data --> ersetzt ASA.DLL GetData()
   22 //      Puffer gefüllt mit Struktur IrpParamsGetData übergeben
   23 
   24 //Userdefined datatypes
   25 struct IrpParams
   26 {
   27         ULONG Port;
   28         ULONG Value;
   29 };
   30 
   31 struct IrpParamsGetData
   32 {
   33         PUCHAR pBuffer;                 //Zeiger auf Puffer in den die Daten eingelesen werden sollen
   34         ULONG MaxCount;                 //Anzahl der Einzulesenden Wörter -> größe von Buffer in WORD
   35         //WORD  ymax;
   36 };
   37