使用STM32F1-USB库进行CDC类的通信的开发。USB枚举等应是成功了。能接收到上位机发送的数据。经过解析后向PC发送响应数据时,发现无法发送数据。VCOM接收使用的是双buf方式接收。发送使用的是直接调用USB_SIL_Write()函数进行数据写入发送。用USB抓包软件发现,没有数据被发出。此时,如果再来一次通信的话,即再调用USB_SIL_Write()写入一次的话,抓包软件能抓到一些数据,但与实际写入的数据相比,不完整且有错误,即只有几个字节与写入数据相同。
这会是什么原因呢?
观察USB外设相关寄存器,也没发现有什么问题。一直搞不明白怎么回事 |