打印
[STM32H5]

LAT1343 STM32H5 USBD Classic驱动 CDC移植

[复制链接]
595|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jcky001|  楼主 | 2024-5-28 11:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
细心的用户可能会发现,使用到我们的 STM32CubeMX 6.9.1 对 STM32H5 的USB 外设进行配置的时候,只能用 USBX,而以前的 Classic USB 库不能选择了。 由于 USBx 是基于 Threadx OS 的,客户更多的希望是裸机版本的,所以在这儿给大家提供一个移植的方法。

LAT1343_STM32H5_USBD_Classic驱动_CDC移植_v1.0.pdf

1.13 MB

使用特权

评论回复
沙发
nqty| | 2024-7-23 12:23 | 只看该作者
这种移植方法多发点,哈哈,非常有意义的啊

使用特权

评论回复
板凳
hight1light| | 2024-7-23 13:28 | 只看该作者
确保你有一个STM32H5系列的开发板。安装并配置好STM32CubeMX和STM32CubeIDE。确保你有最新的STM32CubeH5固件包

使用特权

评论回复
地板
ewyu| | 2024-7-23 14:33 | 只看该作者
一般用cubemx配置好就可以的吧

使用特权

评论回复
5
wamed| | 2024-7-23 15:34 | 只看该作者
打开STM32CubeMX,选择你的STM32H5系列芯片。配置时钟树,确保USB时钟(通常是48MHz)正确配置。在“Pinout & Configuration”选项卡中,找到USB_OTG_FS或USB_OTG_HS(根据你的芯片型号),并启用它。在“Middleware”部分,选择“USB_DEVICE”并配置为“CDC”模式。

使用特权

评论回复
6
miltk| | 2024-7-23 17:02 | 只看该作者
在usbd_conf.c文件中,确保USB配置正确,包括端点(Endpoint)配置和DMA配置(如果需要)

使用特权

评论回复
7
teaccch| | 2024-7-23 18:10 | 只看该作者
在usbd_cdc_if.c文件中,实现CDC接口的回调函数,如CDC_Init_FS、CDC_DeInit_FS、CDC_Control_FS、CDC_Receive_FS等在处理数据接收和发送时,注意缓冲区大小和数据长度,避免溢出

使用特权

评论回复
8
yuliangren| | 2024-7-23 19:42 | 只看该作者
一般需要在main.c文件中,初始化USB设备,并在主循环中处理CDC数据接收和发送

使用特权

评论回复
9
nuan11nuan| | 2024-7-24 12:00 | 只看该作者
其实在CDC_Receive_FS回调函数中,处理接收到的数据实现数据发送函数,如CDC_Transmit_FS,用于发送数据到主机

使用特权

评论回复
10
gra22ce| | 2024-7-24 13:06 | 只看该作者
确保USB时钟配置正确,否则USB设备可能无法正常工作

使用特权

评论回复
11
twinkhahale| | 2024-7-24 14:25 | 只看该作者
在配置端点时,确保端点大小和数量符合CDC规范

使用特权

评论回复
12
kqh11a| | 2024-7-29 14:26 | 只看该作者
如果您使用的是 CDC 类,可以在任务中实现数据的发送和接收逻辑。

使用特权

评论回复
13
发给她更好fh| | 2024-7-31 23:19 | 只看该作者
编译您的项目,并通过调试器进行测试。确保 USB 功能正常工作。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1504

主题

4518

帖子

6

粉丝