完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
本文基于STM32F407芯片,记录了如何调配STM32CUBE以及根据CUBE生成的VCP代码,改为USB_BULK传输模式。
准备 工具 STM32CUBEMX + IAR + JLINK SWD + STM32F407ZGT6 EXPLORER开发板 硬件 使用开发板USB SLAVE接口,注意将PA11与D+,PA12与D-用跳帽线连接好。 软件 STM32_CUBE_MX 芯片选择 时钟配置 RCC 选择Crystal/Ceramic Resonator SYS 使用了SWD调试模式,选择Serial Wire USB_OTG_FS 选择Device Only,记得不要选择VBUS,默认DISABLE即可。如果打开VBUS功能可能会导致无法识别USB! 记得确定USB引脚是PA11和PA12!再次提醒把板子上的跳帽线连起来! MIDDLEWARE USB_DEVICE 选择COMUNICATION DEVICE CLASS(VCP)。设置默认。 更改USB PID,VID参数,实验的话随便改。 Project Manager 将HEAP SIZE调高,我设置成了600。网上有人说太小可能没法识别,我就直接加大了,免得出错。然后Genrate Code即可。 至此,STM32 CUBE方面设置完成。此时生成的代码是一个CDC,需要在IAR里编辑更改加入BULK端点。 IAR编辑 u***d_desc.c 打开Project文件。先在u***d_desc.c文件中更改设备描述符。 PID,VID随便改问题不大。 在__ALIGN_BEGIN uint8_t USBD_FS_DeviceDesc[USB_LEN_DEV_DESC] __ALIGN_END中修改如下: u***d_cdc.c 在u***d_cdc.c中加入双缓冲区: 在/* USB CDC device Configuration Descriptor */ __ALIGN_BEGIN uint8_t USBD_CDC_CfgHSDesc[USB_CDC_CONFIG_DESC_SIZ] __ALIGN_END 里更改: 同样的,在__ALIGN_BEGIN uint8_t USBD_CDC_CfgFSDesc[USB_CDC_CONFIG_DESC_SIZ] __ALIGN_END 和 __ALIGN_BEGIN uint8_t USBD_CDC_OtherSpeedCfgDesc[USB_CDC_CONFIG_DESC_SIZ] __ALIGN_END 中同样复制上述__ALIGN_BEGIN uint8_t USBD_CDC_CfgHSDesc[USB_CDC_CONFIG_DESC_SIZ] __ALIGN_END中的代码。将三种情况配置成一样的,偷懒。记得修改USB_CDC_CONFIG_DESC_SIZ为32。右键点击USB_CDC_CONFIG_DESC_SIZ直接找他的declaration位置修改即可。 接着,在static uint8_t USBD_CDC_Init (USBD_HandleTypeDef *pdev, uint8_t cfgidx)中修改初始化函数为: |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1750 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1608 浏览 1 评论
1049 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
721 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1665 浏览 2 评论
1924浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
709浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
559浏览 3评论
583浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
544浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 09:52 , Processed in 0.779934 second(s), Total 48, Slave 41 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号