基于STM32F103实现与上位机的USB-HID通讯。
图硬件资源
STM32_USB-FS-Device_Lib_V4.0.0.rar:(访问密码:1666)
https://url48.ctfile.com/f/33868548-1000799917-a5409d?p=1666
可以私信或者vx枫中看世界,输入STM32_USB
0-Template.rar: (访问密码:1666)
https://url48.ctfile.com/f/33868548-1000800634-340337?p=1666
可以私信或者vx枫中看世界,输入STM32F103基础模板
检查、编译正常
图4.1 工程模板编译正常
基于此库工程进行移植。
图4.2.1 usb库工程
库工程编译正常
图4.2.2 库工程编译正常
根据实际芯片,烧录合适的工程
图4.3.1 库工程烧录正常
图4.3.2 usb正确识别
图4.4.1 设备驱动库文件
分别移植.c/.h文件
图4.5.1 usb用户文件.c
图4.5.2 usb用户文件.h
图4.6.1 usb移植文件
图4.6.2 usb用户文件存放
注意添加文件路径
缺少“platform_config.h”文件,删除替换即可
存在大量库工程使用的测试代码,需要删除,替换为我们需要的内容。
usb_endp.c中
EP1_OUT_Callback | 替换 | EP1_OUT_Callback |
EP1_IN_Callback | 替换 | EP2_IN_Callback |
hw_config.c中
Set_System | 清空 | |
Enter_LowPowerMode | 添加 | |
Leave_LowPowerMode | 修改 | |
USB_Interrupts_Config | 修改 | |
USB_Cable_Config | 清空 | |
EXTI_Configuration | 清空 | |
ADC_Configuration | 清空 | |
Get_SerialNum | 完善ID | |
CustomHID_Reset | 修改端口 | |
CustomHID_SetConfiguration | 修改 | |
CustomHID_Status_In | 清空 | |
CustomHID_Data_Setup | ??暂未修改 | |
CustomHID_SetReport_Feature | ??暂未修改 | |
hw_config.c中
USB_LP_CAN1_RX0_IRQHandler | 添加 |
编译无错误
编译无错误
正常。
无法通讯
修改usb_desc.c中的配置参数
以及usb_conf.h中参数
速度慢了,之后再考虑优化吧
12-USBHID.rar(访问密码:1666)
https://url48.ctfile.com/f/33868548-1003799545-db773a?p=1666
可以私信或者vx枫中看世界,输入USBHID
联系客服