标题: 虚拟串口调试中遇到的问题 [打印本页]

作者: 51黑黑黑    时间: 2016-2-21 15:45
标题: 虚拟串口调试中遇到的问题
     使用STM32F103X的USB实现虚拟串口,在调试过程中,发现发送的数据小于64字节或者大于64字节的时候,数据都能正常的发送,但是当数据等于64字节时数据就发送不出去。
     这个主要是在描述符里,我们规定了一帧数据的大小是64字节,所以当待发送的数据小于64字节时,系统会认为数据发送完毕,这样数据就发送出去了,
     当数据大于64字节且不是64的整数倍时,驱动将数据帧拆分成64+64+....+x(小于64)当到了最后一帧时,由于该帧小于64字节,驱动认为数据发送完毕,结束发送。
     当数据刚好等于64的证书倍时,驱动认为后续还有数据,所以只是将这些数据存入缓冲区中,并未发送,所以对用户来说,就感觉到数据没有传输下去,一般这种情况下的处理方法是数据发送完毕后,发送一个空包结束发送。​






欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1