亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? usbfx2lk_ioctl.h

?? VisualC++寫的一個USB的驅動程序。
?? H
字號:
///////////////////////////////////////////////////////////////////////////////
//
//    (C) Copyright 2005 OSR Open Systems Resources, Inc.
//    All Rights Reserved
//
//    This sofware is supplied for instructional purposes only.
//
//    OSR Open Systems Resources, Inc. (OSR) expressly disclaims any warranty
//    for this software.  THIS SOFTWARE IS PROVIDED  "AS IS" WITHOUT WARRANTY
//    OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION,
//    THE IMPLIED WARRANTIES OF MECHANTABILITY OR FITNESS FOR A PARTICULAR
//    PURPOSE.  THE ENTIRE RISK ARISING FROM THE USE OF THIS SOFTWARE REMAINS
//    WITH YOU.  OSR's entire liability and your exclusive remedy shall not
//    exceed the price paid for this material.  In no event shall OSR or its
//    suppliers be liable for any damages whatsoever (including, without
//    limitation, damages for loss of business profit, business interruption,
//    loss of business information, or any other pecuniary loss) arising out
//    of the use or inability to use this software, even if OSR has been
//    advised of the possibility of such damages.  Because some states/
//    jurisdictions do not allow the exclusion or limitation of liability for
//    consequential or incidental damages, the above limitation may not apply
//    to you.
//
//    OSR Open Systems Resources, Inc.
//    105 Route 101A Suite 19
//    Amherst, NH 03031  (603) 595-6500 FAX: (603) 595-6503
//    email bugs to: bugs@osr.com
//
//
//    MODULE:
//
//      USBFX2LK_Ioctl.h
//
//    ABSTRACT:
//
//
//    AUTHOR(S):
//
//      OSR Open Systems Resources, Inc.
// 
///////////////////////////////////////////////////////////////////////////////

//
// This header file contains all declarations shared between driver and user
// applications.
//

#ifndef __USBFX2LK_IOCTL_H__
#define __USBFX2LK_IOCTL_H__ (1)
#include <basetsd.h>

//
// The following value is arbitrarily chosen from the space defined by Microsoft
// as being "for non-Microsoft use"
//
#define FILE_DEVICE_OSRUSBFX2LK 65500

//
// OSRUSBFX2LK Interface Guid.
// {C5B7F228-CAFF-42d5-A472-6B9EDA7982EC}
//
DEFINE_GUID(GUID_OSR_USBFX2LK_INTERFACE, 
    0xc5b7f228, 0xcaff, 0x42d5, 0xa4, 0x72, 0x6b, 0x9e, 0xda, 0x79, 0x82, 0xec);


//
// Define the structures that will be used by the IOCTL 
//  interface to the driver
//

//
// USBFX2_PIPE_ENUM
//
//  For any IOCTL that works on a specific pipe 
//   (IOCTL_OSRUSBFX2_RESET_PIPE, for example) 
//   the input parameter will be a USBFX2_PIPE_ENUM
//   value to indicate which pipe the IOCTL is directed
//   to
//
typedef enum _USBFX2_PIPE_ENUM {

    USBFx2BulkInPipe = 0x5301979,
    USBFx2BulkOutPipe,
    USBFx2InterruptPipe

}USBFX2_PIPE_ENUM, *PUSBFX2_PIPE_ENUM;


//
// BAR_GRAPH_STATE
//
// BAR_GRAPH_STATE is a bit field structure with each
//  bit corresponding to one of the bar graph on the 
//  OSRFX2 Development Board
//
#include <pshpack1.h>
typedef struct _BAR_GRAPH_STATE {

    union {
 
        struct {
            //
            // Individual bars starting from the 
            //  top of the stack of bars 
            //
            // NOTE: There are actually 10 bars, 
            //  but the very top two do not light
            //  and are not counted here. Also
            //  note that the bars aren't actually
            //  wired the way that you might think
            //  that they are. Sending a "1" to the
            //  device actually lights the fourth
            //  bar from the bottom
            //
            UCHAR Bar4 : 1;
            UCHAR Bar5 : 1;
            UCHAR Bar6 : 1;
            UCHAR Bar7 : 1;
            UCHAR Bar8 : 1;
            UCHAR Bar1 : 1;
            UCHAR Bar2 : 1;
            UCHAR Bar3 : 1;
        };

        //
        // The state of all the bar graph as a single
        // UCHAR
        //
        UCHAR BarsAsUChar;

    };

}BAR_GRAPH_STATE, *PBAR_GRAPH_STATE;

//
// SWITCH_STATE
//
// SWITCH_STATE is a bit field structure with each
//  bit corresponding to one of the switches on the 
//  OSRFX2 Development Board
//
typedef struct _SWITCH_STATE {

    union {
        struct {
            //
            // Individual switches starting from the 
            //  left of the set of switches
            //
            UCHAR Switch1 : 1;
            UCHAR Switch2 : 1;
            UCHAR Switch3 : 1;
            UCHAR Switch4 : 1;
            UCHAR Switch5 : 1;
            UCHAR Switch6 : 1;
            UCHAR Switch7 : 1;
            UCHAR Switch8 : 1;
        };

        //
        // The state of all the switches as a single
        // UCHAR
        //
        UCHAR SwitchesAsUChar;

    };


}SWITCH_STATE, *PSWITCH_STATE;


// 
// IOCTL_OSRUSBFX2_GET_BAR_GRAPH_DISPLAY
//
// This IOCTL allows the user to get the state of the bar graph. 
//
// Input:
//  None.
//
// Output:
//  BAR_GRAPH_STATE
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_BAR_GRAPH_DISPLAY \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x801, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_SET_BAR_GRAPH_DISPLAY
//
// This IOCTL allows the user to set the state of the bar graph. 
//
// Input:
//  BAR_GRAPH_STATE.
//
// Output:
//  None.
//
// Access Required:
//  Write.
//
#define IOCTL_OSRUSBFX2_SET_BAR_GRAPH_DISPLAY \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x802, METHOD_BUFFERED, FILE_WRITE_ACCESS)


// 
// IOCTL_OSRUSBFX2_READ_SWITCHES
//
// This IOCTL allows the user to get the state of the switches. 
//
// Input:
//  None.
//
// Output:
//  SWITCH_STATE
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_READ_SWITCHES \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x802, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_RESET_PIPE
//
// This IOCTL allows the user to reset a pipe. The pipe that 
//  is reset is the pipe that corresponds to the open handle
//  to which this IOCTL is sent
//
// Input:
//  PUSBFX2_PIPE_ENUM indicating which pipe to reset
//
// Output:
//  None.
//
// Access Required:
//  Write.
//
#define IOCTL_OSRUSBFX2_RESET_PIPE  \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x803, METHOD_BUFFERED, FILE_WRITE_ACCESS)


// 
// IOCTL_OSRUSBFX2_GET_DEVICE_DESCRIPTOR
//
// This IOCTL allows the user to get the USB device descriptor
//  for the device
//
// Input:
//  None.
//
// Output:
//  USB_DEVICE_DESCRIPTOR.
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_DEVICE_DESCRIPTOR \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x804, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_GET_CONFIGURATION_DESCRIPTOR
//
// This IOCTL allows the user to get the USB configuration descriptor
//  for the device
//
// Input:
//  None.
//
// Output:
//  USB_CONFIGURATION_DESCRIPTOR.
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_CONFIGURATION_DESCRIPTOR \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x805, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_GET_PIPE_INFORMATION
//
// This IOCTL allows the user to get the USB pipe descriptor
//  for the open pipe
//
// Input:
//  PUSBFX2_PIPE_ENUM indicating which pipe
//
// Output:
//  USBD_PIPE_INFORMATION.
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_PIPE_INFORMATION \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x806, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_GET_7_SEGMENT_DISPLAY
//
// This IOCTL allows the user to get the state of the 7 Segment Display. 
//
// Input:
//  None.
//
// Output:
//  7 SEGMENT STATE
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_7_SEGMENT_DISPLAY \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x808, METHOD_BUFFERED, FILE_READ_ACCESS)


// 
// IOCTL_OSRUSBFX2_SET_7_SEGMENT_DISPLAY
//
// This IOCTL allows the user to set the state of the 7 Segment display. 
//
// Input:
//  7 SEGMENT STATE.
//
// Output:
//  None.
//
// Access Required:
//  Write.
//
#define IOCTL_OSRUSBFX2_SET_7_SEGMENT_DISPLAY \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x809, METHOD_BUFFERED, FILE_WRITE_ACCESS)

// 
// IOCTL_OSRUSBFX2_GET_INTERFACE_INFORMATION
//
// This IOCTL allows the user to get the USB Interface Information
//  for the device
//
// Input:
//  None.
//
// Output:
//  USB_CONFIGURATION_DESCRIPTOR.
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_INTERFACE_INFORMATION \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x810, METHOD_BUFFERED, FILE_READ_ACCESS)

// 
// IOCTL_OSRUSBFX2_GET_INTERRUPT_MESSAGE
//
// This IOCTL allows the user to get a USB Interrupt Message
//  from the device
//
// Input:
//  None.
//
// Output:
//  Interrupt Message
//
// Access Required:
//  Read.
//
#define IOCTL_OSRUSBFX2_GET_INTERRUPT_MESSAGE \
    CTL_CODE(FILE_DEVICE_OSRUSBFX2LK, 0x811, METHOD_BUFFERED, FILE_READ_ACCESS)

#endif /* __USBFX2LK_IOCTL_H__ */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精选一二三| 日韩精品乱码av一区二区| 一区二区三区免费在线观看| 奇米777欧美一区二区| 国产高清精品久久久久| 91精品国产综合久久久久久久久久| 久久人人爽爽爽人久久久| 亚洲国产精品嫩草影院| 成人小视频在线| 欧美电影免费观看完整版| 一片黄亚洲嫩模| av在线播放成人| 久久久久国产精品厨房| 另类中文字幕网| 在线综合视频播放| 亚洲一区二区三区美女| 99久久综合色| 国产精品久久久久久久久搜平片| 九九在线精品视频| 日韩视频在线你懂得| 亚洲成人动漫在线观看| 欧美影院午夜播放| 亚洲欧美一区二区视频| 成人开心网精品视频| 欧美国产欧美亚州国产日韩mv天天看完整| 婷婷一区二区三区| 欧美老人xxxx18| 亚洲一卡二卡三卡四卡五卡| www.99精品| 国产精品久久综合| 99精品视频中文字幕| 国产午夜亚洲精品理论片色戒| 精品亚洲porn| 国产欧美一区二区精品秋霞影院| 久久精品理论片| 欧美精品一区二区三区视频| 麻豆91在线播放免费| 欧美va亚洲va| 国产精品123| 久久精品亚洲一区二区三区浴池| 国产麻豆视频精品| 国产欧美一区二区在线| 国产99久久久久| 中文字幕日韩一区二区| 色综合av在线| 亚洲午夜免费电影| 欧美日韩亚洲综合在线| 午夜精品久久久久久久久| 91精品国产高清一区二区三区 | 亚洲国产日韩一区二区| 欧美日韩一区二区在线观看视频| 丝袜美腿亚洲综合| 亚洲精品一区二区三区在线观看 | 亚洲成人自拍网| 日韩一区二区精品葵司在线| 国产久卡久卡久卡久卡视频精品| 国产欧美一区二区精品仙草咪| 99久久精品免费看国产| 亚洲一区二区三区四区的| 日韩亚洲电影在线| 成人午夜视频在线| 亚洲第一久久影院| 久久久国际精品| 91在线视频观看| 人禽交欧美网站| 中文字幕不卡一区| 欧美日本在线视频| 成人午夜精品在线| 性做久久久久久| 久久久不卡影院| 91久久线看在观草草青青| 日韩在线一二三区| 国产精品久久久久aaaa樱花 | 亚洲天堂av老司机| 91精品欧美综合在线观看最新| 国产91清纯白嫩初高中在线观看 | 久久女同互慰一区二区三区| 色综合久久88色综合天天免费| 日韩av电影免费观看高清完整版在线观看 | 国产xxx精品视频大全| 亚洲超碰精品一区二区| 中文字幕一区二区三区在线不卡 | 国产婷婷一区二区| 3d成人h动漫网站入口| 99在线精品免费| 国内成人免费视频| 亚洲成人综合视频| 亚洲免费观看视频| 国产精品久久久久久久久久久免费看 | 欧美一区二区网站| 色婷婷久久99综合精品jk白丝| 精品系列免费在线观看| 午夜精品久久久久| 亚洲日本丝袜连裤袜办公室| 久久免费美女视频| 欧美大片拔萝卜| 欧美人妖巨大在线| 在线观看亚洲一区| 91视频一区二区三区| 国产高清在线精品| 韩国毛片一区二区三区| 日日夜夜免费精品视频| 一区二区三区四区国产精品| 中文字幕在线观看不卡视频| 久久久久99精品国产片| 日韩女优制服丝袜电影| 欧美一区二区私人影院日本| 欧美乱熟臀69xxxxxx| 欧美日韩午夜影院| 欧美三级日韩三级| 欧美日韩成人综合在线一区二区| 日本高清成人免费播放| 在线中文字幕一区| 日本高清无吗v一区| 在线观看免费亚洲| 91久久一区二区| 欧美午夜不卡在线观看免费| 欧美亚洲综合另类| 欧美另类高清zo欧美| 91精选在线观看| 欧美成人一区二区| www久久精品| 日本一区二区三区高清不卡| 国产精品国产三级国产| 国产精品无人区| 日韩美女啊v在线免费观看| 亚洲欧美国产77777| 亚洲在线一区二区三区| 日韩高清一区二区| 久久精品国产精品青草| 国产精品77777| 99久久精品国产精品久久| 色婷婷综合久久久久中文 | 91精品一区二区三区在线观看| 91精品欧美综合在线观看最新| 精品免费国产二区三区| 国产亚洲欧美激情| 亚洲欧美日韩久久精品| 日韩精品欧美成人高清一区二区| 久久成人18免费观看| 不卡的av中国片| 在线精品视频小说1| 6080国产精品一区二区| 久久人人超碰精品| 亚洲精品久久嫩草网站秘色| 日本女优在线视频一区二区| 国产福利一区二区三区视频| 色视频一区二区| 精品久久久久久久一区二区蜜臀| 国产精品狼人久久影院观看方式| 香蕉影视欧美成人| 国产永久精品大片wwwapp| 色综合天天视频在线观看 | 久久精品国产99国产精品| 国产成人精品免费一区二区| 欧美三级电影在线看| 国产亚洲欧洲一区高清在线观看| 亚洲欧洲美洲综合色网| 日韩国产在线观看| 91同城在线观看| 精品日韩在线一区| 一区二区三区久久| 国产99久久精品| 欧美精品亚洲二区| 亚洲国产精品国自产拍av| 偷窥少妇高潮呻吟av久久免费| 成人app在线| 欧美一级xxx| 亚洲一级二级三级| 成人午夜视频在线| 精品国产三级电影在线观看| 亚洲高清不卡在线观看| 国产suv精品一区二区6| 日韩西西人体444www| 亚洲精品久久久久久国产精华液| 国产精品一区二区久久不卡| 欧美精品乱码久久久久久| 亚洲日本一区二区三区| 丁香婷婷综合网| 日韩美女主播在线视频一区二区三区| 日韩一区在线看| 成人精品免费看| 久久久久久久久久电影| 青青草97国产精品免费观看 | 亚洲精品久久7777| 99久久精品国产一区二区三区 | 欧美成人一区二区三区在线观看| 亚洲国产欧美在线| 91国内精品野花午夜精品| 中文字幕一区免费在线观看| 国产91精品入口| 国产精品色在线| 国产成人精品免费网站| 久久精品日产第一区二区三区高清版| 麻豆视频一区二区| 欧美成人精精品一区二区频| 奇米色777欧美一区二区| 在线91免费看| 免费成人在线网站| 欧美精品日韩精品|