赞
踩
目标:利用cube MX 工具生成custom hid usb设备代码,配置相关参数,实现利用custom hid usb传送大容量数据的功能
实现思路:stm32f103zet6单片机内置usb2.0模块,每次上传数据最大64字节一包,所以如果想要上传一个比如1024字节的数组,那么就需要进行拆包,然后分包发送。
注意事项:
我在调试过程中,把自定义的uint8_t array[1000];数组放到了main函数中, 结果程序下载完毕,单片机直接卡死,改成static uint8_t array[1000];即可。
每发送一包后要有一个40ms的延时,如果延时过低,那么就会在上位机没取完缓冲区的数据的情况下继续发送下包导致数据发送缺失的情况出现
发送每一包之前都要线清空一下发送缓冲区
分包发送代码如下
- #define USB_TX_BUFFER_SIZE 64
- uint8_t USB_Tx_Buffer[USB_TX_BUFFER_S
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。