完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
最近几天工作比较忙,就发了一个简单的开箱和点亮LED的测试,今天下午搞了下USB部分,通过PC端的上位机点亮和熄灭板子上的三个用户LED.下面是过程,完完整整的过程.工程是利用之前的点亮LED工程修改的,点亮LED的帖子是 https://bbs.elecfans.com/jishu_1100675_1_1.html 复制工程文件夹,修改文件名为USBLEDTest,打开CubeMX导入工程. 启用外部晶振
使能USB_OTG_ONLY模式为DeviceOnly,其他部分默认
点击MiddleWares,USB类型设置为自定义HID设备类型
点Configuration选项卡,切换到配置部分, 基层Connectivity部分不需要改动,但是第三方组件部分需要改动 点击第三方组件中的USB_Device按钮
红框部分是修改的地方,其余默认即可
这里的设备字符串可不进行修改直接使用,不影响
然后点确定,可能时钟部分会报错,让其自动生成合适时钟频率即可,然后生成工程 发现文件结构是
有几处CubeMX生成代码不对,需要进行修改 打开Srcu***d_custom_hid_if.c文件,修改CUSTOM_HID_ReportDesc_FS数组为下述内容
在 /* USER CODE BEGIN EXPORTED_VARIABLES */ 和 /* USER CODE END EXPORTED_VARIABLES */ 之间添加
这是USB数据接收缓存, 然后在CUSTOM_HID_OutEvent_FS函数的USER Code Begin 6里面添加
打开 MiddlewaresSTSTM32_USB_Device_LibraryClassCustomHIDIncu***d_customhid.h文件 修改宏定义CUSTOM_HID_EPIN_SIZE和CUSTOM_HID_EPOUT_SIZE为0x40. 打开Main.c 在/* USER CODE BEGIN PFP */ 和 /* USER CODE END PFP */之间添加
主循环里添加
编译工程,下载到Nucle里边,再找一个数据线.插在网口那一边的USB接口上,这个USB不对开发版进行供电,所以调试器部分的USB接口不能不接. 接上之后电脑会提示发现新硬件,同时安装驱动(微软提供的),等待安装完成 右击我的电脑,选管理 然后按照下图顺序查看是否完成驱动安装
如果正确,那么就是安装成功了. 下面说上位机编写过程 上位机采用C#进行编写 代码很简单,但是我对HID通信部分进行了封装,为了尊重我的劳动成果,此部分代码不在上传,但是需要的朋友可私信我或者发邮件跟我要. 上位机界面如图所示
此部分源码可可分享
打开上位机,VID部分和PID部分CubeMX会默认设置为0x0483和0x5750,此上位机也是这个默认设置,可自行修改为自己设置的. 然后点打开USB端口,会提示连接结果 成功连接提示为
|
|
|
相关推荐
|
|
|
忘记写了,我的邮箱是gaojiaxin2011@126.com,需要USB上位机源码的课发邮件给我.
我希望我的成果得到尊重,我可以奉献,但是要知道,这不是理所应当的,如果要发布,请声明来源,谢谢 |
|
|
|
|
|
|
|
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2810 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2420 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2288 浏览 0 评论
2404 浏览 1 评论
1643 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 10:03 , Processed in 1.731148 second(s), Total 72, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖