STM32 HAL库 USB CDC程序只能接收一次数据
来源:互联网 发布:ibeacon室内定位算法 编辑:程序博客网 时间:2024/05/29 19:58
使用STM32Cube生成了USB CDC基础代码,HAL库版本号为1.6.0
SELF_POWERED: ENABLEPhysical: interface phy_itface
将初始化好的代码编译下载到设备中可直接接入计算机,并安装stsw-stm32102-VCP软件,配置该软件目录下的stmcdc.inf文件将其中的VID和PID配置为与设备相同的ID号,然后安装32位或者64位dpinst程序即可成功安装驱动。
stm32vcp程序实际上使用了windows的usbser.sys文件,因此使用精简版系统的需要自行安装usbser这个驱动文件。
接下来打开串口助手,打开对应的串口号,发送一组数据。在设备的usbd_cdc_if.c文件中
static int8_t CDC_Receive_HS(uint8_t* Buf, uint32_t *Len)
函数够正确接收到数据,但是串口助手发送第二组数据时卡死,其原因在于设备接收完数据后,没有使用
uint8_t USBD_CDC_ReceivePacket(USBD_HandleTypeDef *pdev)
函数等待下一次数据的到来。
0 0
- STM32 HAL库 USB CDC程序只能接收一次数据
- STM32 USB数据接收与数据发送程序流程分析
- STM32 USB数据接收与数据发送程序流程分析
- STM32 USB转串口CDC官方示例程序修正
- STM32 USB转串口CDC官方示例程序修正
- [STM32/8经验] STM32 USB数据接收与数据发送
- STM32 F105 USB CDC host
- STM32 HAL 库, 配置串口DMA接收及空闲中断
- 关于NRF24L01只能接收一次数据问题的解决办法
- 终于解决了nRF24L01接收端只能接收一次数据的问题
- 程序只能运行一次
- 程序只能运行一次
- 论STM32标准库程序修改为HAL库
- STM32 HAL I2C库读指定寄存器的数据
- STM32L152 USART HAL库接收任意长度数据详细解析
- STM32移植RT-Thread的串口只能接收一个字节数据的问题
- STM32 USB 程序将BULK EP改成双缓冲机制后,接收OUT数据的速度从原先的500KB/S,
- STM32 USB 程序将BULK EP改成双缓冲机制后,接收OUT数据的速度从原先的500KB/S
- 卡特兰数 Catalan数 ( ACM 数论 组合 )
- Android-开机自动启动程序并禁用返回键(BroadcastReceiver)
- android 根据TextView宽度 自动缩小字体大小 以适应其宽度
- Java文件读写操作指定编码方式 -- 避免乱码
- 线性布局LinearLayout和相对布局RelativeLayout 比较
- STM32 HAL库 USB CDC程序只能接收一次数据
- SSH防暴力破解的解决方法
- Nginx网站自定义404错误页面
- SSDB 的双主和多主配置
- Andorid极光推送API全角和
- 关于百度地图周边雷达的回调函数会重复调用问题的解决方案
- 图论进阶训练
- ZOJ 3204 Connect them(最小生成树:kruscal算法)
- 大二,过的挺滋润