搜索
bottom↓
回复: 7
打印 上一主题 下一主题

Win10 下 USB 驱动程序开发

[复制链接]

出0入0汤圆

跳转到指定楼层
1
发表于 2023-11-3 23:04:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Win10 下 USB 驱动程序开发



本文介绍了USB设备驱动相关的基本软硬件,和编写驱动的基本步骤和流程。通过编写一个包含三个端点的USB(UMDF V2)设备驱动,讲述了USB输入设备驱动的具体编写步骤,并给予了测试方法。文未附有完整程序代码。
硬件:
微软的Windows USB驱动程序框架开发例程(https://github.com/microsoft/Windows-driver-samples/tree/main/usb)基于OSR USB FX2开发板硬件。为了方便研究、测试USB驱动程序,我们使用NXP FRDM-K64 模拟实现 Cypress EZ-USB FX2Development Kit (CY3681)开发板USB功能,它包含 USB FX2 设备和实现客户端驱动程序所需的所有硬件规范(1 interfaceand 3 endpoints , Interrupt IN, Bulk Out, Bulk IN)。相关的USB协议栈代码也可以非常方便移植到NXP的其他系列MCU硬件,例如IMX RT10xx和LPC55xx系列。

软件:
在NXP MCUXpresso SDK USB例程dev_printer_virtual_plain_text_bm基础上,增加一个 interrupt IN EP中断端点。按下FRDM-K64SW3按键后发送 0x55 到 Interrupt EP中断端点,模拟EZ-USB FX2 的 Switch 拨码状态。
在开发宿主机计算机上安装Visual Studio 2019以上版本。安装Windows 驱动程序工具包 (WDK)。

本文介绍使用 Microsoft Visual Studio Community 2019 编译Win10 内核驱动例程 Sample KMDF Function Driver for OSR USB-FX2(https://github.com/microsoft/Win ... master/usb/kmdf_fx2)。从 github 下载代码后编译生成 Win10 内核驱动osrusbfx2.sys 文件。

相关的测试源代码
NXP FRDM-K64 模拟实现 Cypress EZ-USB FX2Development Kit (CY3681)开发板
链接:https://pan.baidu.com/s/11Au_nb0PwCrqeBQQsBtysw
提取码:stfq
USB内核驱动例程
链接:https://pan.baidu.com/s/1FaxgNmoU2cSwZRblqJmwiQ
提取码:my7i

https://github.com/microsoft/Win ... master/usb/kmdf_fx2

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

阿莫论坛20周年了!感谢大家的支持与爱护!!

月入3000的是反美的。收入3万是亲美的。收入30万是移民美国的。收入300万是取得绿卡后回国,教唆那些3000来反美的!

出0入984汤圆

2
发表于 2023-11-3 23:22:58 | 只看该作者
用winusb/libusb就搞定了吧

出0入309汤圆

3
发表于 2023-11-4 08:17:47 来自手机 | 只看该作者
自己写驱动,怎么解决签名的问题?

出10入0汤圆

4
发表于 2023-11-4 11:09:37 | 只看该作者

自己写驱动,怎么解决签名的问题?+1

出0入0汤圆

5
 楼主| 发表于 2023-11-4 13:15:35 | 只看该作者
casterbn 发表于 2023-11-4 11:09
自己写驱动,怎么解决签名的问题?+1
(引用自4楼)

Windows内核驱动程序需要申请WHQL认证解决驱动签名的问题。这部分需要公司商务处理,不是开发人员的职责。

出10入0汤圆

6
发表于 2023-11-4 14:15:10 | 只看该作者
了解了

出0入984汤圆

7
发表于 2023-11-4 14:21:28 | 只看该作者
MCU_Coder 发表于 2023-11-4 13:15
Windows内核驱动程序需要申请WHQL认证解决驱动签名的问题。这部分需要公司商务处理,不是开发人员的职责 ...
(引用自5楼)

https://www.amobbs.com/thread-5598249-1-1.html

出0入309汤圆

8
发表于 2023-11-4 19:33:19 | 只看该作者
MCU_Coder 发表于 2023-11-4 13:15
Windows内核驱动程序需要申请WHQL认证解决驱动签名的问题。这部分需要公司商务处理,不是开发人员的职责 ...
(引用自5楼)

合着贵司内部就是互相甩锅而不是同心协力是吧。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-28 00:18

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表