资源简介
这是我的毕业设计,感觉做得还不错,希望能帮到大家。

代码片段和文件信息
#include “usbdriver.h“
ULONG UsbGetCurrentframeNumber(IN PDEVICE_object fdo);
ULONG UsbGetDeviceDescriptor(IN PDEVICE_object fdo
PVOID pvOutputBuffer);
ULONG UsbGetStringDescriptor(IN PDEVICE_object fdo
UCHAR Index
USHORT LanguageId
PVOID pvOutputBuffer
ULONG ulLength);
ULONG UsbGetConfigDescriptor(IN PDEVICE_object fdo
PVOID pvOutputBuffer
ULONG ulLength);
NTSTATUS Bulk_Read_Write(IN PDEVICE_object fdoIN PIRP Irp);
NTSTATUS UsbResetPipe(IN PDEVICE_object fdo ULONG PipeNum);
NTSTATUS UsbAbortPipe(IN PDEVICE_object fdo IN USBD_PIPE_HANDLE PipeHandle);
ULONG UsbVendorRequest(IN PDEVICE_object fdo IN PVENDOR_REQUEST_IN pVendorRequest);
//------------------------------------------------------------------------------
NTSTATUS UsbCreate(IN PDEVICE_object fdo IN PIRP Irp)
{
NTSTATUS ntStatus=STATUS_SUCCESS;
PDEVICE_EXTENSION pdx = (PDEVICE_EXTENSION )fdo->DeviceExtension;
pdx->OpenHandles++;
Irp->IoStatus.Status = STATUS_SUCCESS;
Irp->IoStatus.Information = 0;
IoCompleteRequest (Irp IO_NO_INCREMENT);
return ntStatus;
}
//----------------------------------------------------------------------------
NTSTATUS UsbClose(IN PDEVICE_object fdo IN PIRP Irp)
{
NTSTATUS ntStatus=STATUS_SUCCESS;
PDEVICE_EXTENSION pdx = (PDEVICE_EXTENSION )fdo->DeviceExtension;
pdx->OpenHandles--;
Irp->IoStatus.Status = STATUS_SUCCESS;
Irp->IoStatus.Information = 0;
IoCompleteRequest (Irp IO_NO_INCREMENT);
return ntStatus;
}
//---------------------------------------------------------------------------
NTSTATUS UsbIOCTL(IN PDEVICE_object fdoIN PIRP Irp)
{
NTSTATUS ntStatus;
PIO_STACK_LOCATION IrpStack;
PDEVICE_EXTENSION pdx;
ULONG IoControlCode;
PVOID IoBuffer;
ULONG InputBufferLength;
ULONG OutputBufferLength;
ULONG length;
PUCHAR pch;
pdx = (PDEVICE_EXTENSION )fdo->DeviceExtension;
if (!LockDevice(fdo))
return CompleteRequest(Irp STATUS_DELETE_PENDING 0);
IrpStack = IoGetCurrentIrpStackLocation (Irp);
Irp->IoStatus.Status = STATUS_SUCCESS;
Irp->IoStatus.Information = 0;
IoBuffer = Irp->AssociatedIrp.SystemBuffer;
InputBufferLength = IrpStack->Parameters.DeviceIoControl.InputBufferLength;
OutputBufferLength = IrpStack->Parameters.DeviceIoControl.OutputBufferLength;
IoControlCode = IrpStack->Parameters.DeviceIoControl.IoControlCode;
switch (IoControlCode) {
case IOCTL_EZUSB_GET_CURRENT_frame_NUMBER:
{
ULONG frameNumber = 0;
if (OutputBufferLength < sizeof(ULONG)) {
Irp->IoStatus.Status = STATUS_INVALID_PARAMETER;
break;
}
frameNumber =
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 670 1997-04-11 19:23 USB\Driver\MAKEFILE
文件 410 2001-12-11 21:45 USB\Driver\RESOURCE.H
文件 412 2008-05-02 19:44 USB\Driver\Sources
文件 19972 2008-04-24 18:14 USB\Driver\UsbDispatch.c
文件 5567 2008-04-24 19:54 USB\Driver\usbdriver.h
文件 2640 2008-05-02 18:34 USB\Driver\UsbInit.c
文件 16197 2008-05-02 18:58 USB\Driver\UsbPnp.c
....... 4633 2008-05-02 19:44 USB\Driver\buildfre.log
..AD... 0 2008-05-02 19:38 USB\Driver\obj\i386
....... 568 2008-05-02 19:44 USB\Driver\obj\_ob
..AD... 0 2008-05-02 19:38 USB\Driver\obj
文件 1286 2008-05-02 19:44 USB\Driver\objfre\i386\resource.res
文件 237113 2008-05-02 19:44 USB\Driver\objfre\i386\usbinit.sbr
文件 39210 2008-05-02 19:44 USB\Driver\objfre\i386\usbinit.obj
文件 241756 2008-05-02 19:44 USB\Driver\objfre\i386\usbpnp.sbr
文件 60997 2008-05-02 19:44 USB\Driver\objfre\i386\usbpnp.obj
文件 241777 2008-05-02 19:44 USB\Driver\objfre\i386\usbdispatch.sbr
文件 56117 2008-05-02 19:44 USB\Driver\objfre\i386\usbdispatch.obj
文件 6656 2008-05-02 19:44 USB\Driver\objfre\i386\usbdriver.sys
文件 93184 2008-05-02 19:44 USB\Driver\objfre\i386\usbdriver.pdb
文件 5149 2008-05-02 19:44 USB\Driver\objfre\i386\usbdriver.map
文件 1684 2008-05-02 19:44 USB\Driver\objfre\i386\usbdriver.sym
..AD... 0 2008-05-02 19:38 USB\Driver\objfre\i386
目录 0 2008-05-02 19:38 USB\Driver\objfre
文件 2586 2008-05-05 16:16 USB\Driver\resource.rc
文件 32068 2008-05-05 16:16 USB\Driver\resource.aps
目录 0 2008-04-06 09:45 USB\Driver
文件 127018 2008-05-06 12:48 USB\Host\Debug\USB.exe
目录 0 2008-04-20 20:59 USB\Host\Debug
文件 3525 2008-03-30 17:10 USB\Host\ReadMe.txt
............此处省略92个文件信息
相关资源
- usb hid调试工具
- HID调试助手
- USB.Over.Network.Server 注册机
- WPF USB 网络 串口 通信软件
- USB转串口驱动,FT232R驱动程序,最新
- 基于web的毕业设计开题报告
- WinCE下CP210x的驱动程序
- hidusage.h hidpi.h 等USB开发用头文件
- 20篇关于计算机的毕业设计外文翻译
- 电子商务毕业设计论文
- 毕业设计 单片机 对讲机 protues仿真
- 计算机软件工程研究生专业毕业设计
- 基于JM20329的SATA转USB 1394
- 430系列单片机USBFET下载驱动
- CY7C68013A固件程序(用于摄像机采集)
- usb调试程序 对USB设备进行数据的读写
- USB 驱动 让电脑与arm进行通信
- 毕业设计:网络围棋对弈
- 毕业设计选课系统毕业设计选课系统
- USB助手(调试USB通信协议的工具) 源
- 基于FPGA的USB接口设计
- 酒店管理系统 酒店管理系统毕业设计
- 枚举USB设备接口(C 源代码)
- 多普达USB Modem驱动(适用于818、828、
- SN9C291B datasheet
- 希捷公布USB外部硬盘解决方案
- USB调试模式一键设置
- USB网卡驱动 USB2.0 TO Fast Ethernet Adapte
- USB转串口(RS232/RS485/RS422)驱动程序文
- USB Type-C SPEC
评论
共有 条评论