启明云端/ 01
你是否曾遇到过?
在使用ESP32-S3,ESP-IDF版本为idf 5.2时,蒸汽锅产品基于例程tusb_serial_device测试USB CDC自发自收,电脑CDC串口一次性发送100000byte,收回数据不完整,出现丢数据的现象,这是为什么呢?
启明云端/ 02
这是咋回事呢?
基于例程复现,用杜邦线接到D- D+,电脑通过串口工具一次性发送100000byte左右数据,接收数据不完整,成功复现问题。
通过日志分析,发现打印任务长时间占用CPU触发看门狗报错。
启明云端/ 03
这时该咋整?
(1)通过menuconfig将cdc的tx rx buffer都开大,默认是从64可以开到1024或者更大。
(2)将打印去除,或者单独开个task去打印,保证callback的快进快出。
解决方案测试验证结果:成功接收了完整的数据。
全部0条评论
快来发表一下你的评论吧 !