电竞比分网-中国电竞赛事及体育赛事平台

分享

STM32F103移植USB-HID步驟

 楓中眸zc 2024-01-12 發(fā)布于江西

一、開發(fā)目的

基于STM32F103實(shí)現(xiàn)與上位機(jī)的USB-HID通訊。

二、硬件資源

硬件資源

三、固件包準(zhǔn)備

1、使用usb

STM32_USB-FS-Device_Lib_V4.0.0.rar:(訪問密碼:1666

https://url48./f/33868548-1000799917-a5409d?p=1666

可以私信或者vx楓中看世界,輸入STM32_USB

2、使用工程模板

0-Template.rar: (訪問密碼:1666

https://url48./f/33868548-1000800634-340337?p=1666

可以私信或者vx楓中看世界,輸入STM32F103基礎(chǔ)模板

四、移植步驟

1、打開工程模版

檢查、編譯正常

4.1 工程模板編譯正常

2、打開usb庫的Custom_HID工程

基于此庫工程進(jìn)行移植。

4.2.1 usb庫工程

庫工程編譯正常

4.2.2 庫工程編譯正常

3、測試燒錄庫工程

根據(jù)實(shí)際芯片,燒錄合適的工程

4.3.1 庫工程燒錄正常

4.3.2  usb正確識(shí)別

4、移植usb設(shè)備文件

4.4.1 設(shè)備驅(qū)動(dòng)庫文件

5、移植usb用戶文件

分別移植.c/.h文件

4.5.1  usb用戶文件.c

4.5.2 usb用戶文件.h

6、移植后的文件

4.6.1 usb移植文件

4.6.2 usb用戶文件存放

 
 
 
7、添加工程文件

注意添加文件路徑

8、第一次編輯結(jié)果

缺少“platform_config.h”文件,刪除替換即可

9、第二次編譯結(jié)果

存在大量庫工程使用的測試代碼,需要?jiǎng)h除,替換為我們需要的內(nèi)容。

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

添加

10、第三次編譯結(jié)果

編譯無錯(cuò)誤

11、main中添加接口

編譯無錯(cuò)誤

12、燒錄后查看usb驅(qū)動(dòng)情況

正常。

13、使用USB調(diào)試助手

無法通訊

14、修改配置參數(shù)

修改usb_desc.c中的配置參數(shù)

以及usb_conf.h中參數(shù)

15、測試通過

速度慢了,之后再考慮優(yōu)化吧

實(shí)例固件

12-USBHID.rar(訪問密碼:1666

https://url48./f/33868548-1003799545-db773a?p=1666

可以私信或者vx楓中看世界,輸入USBHID

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多