共2条
1/1 1 跳转至页
usb,D12 [usb困扰问题]使用D12芯片数据传送错误如何处理?

问
大家好!
比如:传送数据出错或USB线突然断开,D12固件是如何检测出出错信息? 这些出错信息在D12中是如何反馈给固件的?
最近一直在琢磨这个问题,看别人的程序也没有对传送出错做处理,反正就是有数据就开始批量的传,批量的收。USB协议上说:如果数据出错,主机不回ACK。而文档说D12芯片的ACK,NAK等都是自动回复的。既然D12自动回复ACK,我们怎么能知道数据传送错误?固件怎么判断数据错误,固件如何处理传送错误? 答 1: 数据阻塞当出现你说的情况以后,数据会阻塞,再也送不出去,发送缓冲区也总是满的。你判断一下超时就可以啦
以上是猜测,不一定对。 答 2: 如果接收数据错误,那么你就收不到数据;如果发送数据总是错误,那么数据永远发不完。
如果数据线断了,就会检测不到帧同步信息,就会进入挂起状态。
比如:传送数据出错或USB线突然断开,D12固件是如何检测出出错信息? 这些出错信息在D12中是如何反馈给固件的?
最近一直在琢磨这个问题,看别人的程序也没有对传送出错做处理,反正就是有数据就开始批量的传,批量的收。USB协议上说:如果数据出错,主机不回ACK。而文档说D12芯片的ACK,NAK等都是自动回复的。既然D12自动回复ACK,我们怎么能知道数据传送错误?固件怎么判断数据错误,固件如何处理传送错误? 答 1: 数据阻塞当出现你说的情况以后,数据会阻塞,再也送不出去,发送缓冲区也总是满的。你判断一下超时就可以啦
以上是猜测,不一定对。 答 2: 如果接收数据错误,那么你就收不到数据;如果发送数据总是错误,那么数据永远发不完。
如果数据线断了,就会检测不到帧同步信息,就会进入挂起状态。
共2条
1/1 1 跳转至页
回复
打赏帖 | |
---|---|
【STM32F769】调试SD驱动,由于其时钟配置不对引起的错误以及排查记录被打赏35分 | |
C语言函数宏的三种封装方式被打赏50分 | |
【STM32F769】记一次由于开启D-Cache之后DMA数据传输出错的问题查找与解决被打赏35分 | |
嵌入式LinuxC语言程序调试和宏使用技巧被打赏50分 | |
让代码中包含最新的编译时间信息被打赏50分 | |
【分享开发笔记,赚取电动螺丝刀】STM32F769LVGL优化显示被打赏26分 | |
rtthread硬件加密--2crc加密分析被打赏10分 | |
【分享开发笔记,赚取电动螺丝刀】STM32F769驱动ST7789以及显示优化被打赏36分 | |
【分享开发笔记,赚取电动螺丝刀】S32K146 PAL模拟I2C驱动适配被打赏23分 | |
我想要一部加热台+电源硬件设计规范被打赏16分 |