21ic问答首页 - GD32 usbcdc单片机从机只发送,串口打开第一次自动发一个值
GD32 usbcdc单片机从机只发送,串口打开第一次自动发一个值
用的gd32f470。主要是usb cdc的问题。
配置就是PC是主机,单片机就设为device。
程序里就是一直在测量,每测完一次就调用cdc_acm_data_send
{
usb_txfifo_flush(IN端口1)
usbd_ep_send(data,size)
}
然后就是进cdc_acm_in回调函数,packet_sent = 1
串口打开时候,明显第一次多发一次值,或者说如果先关闭串口,测量会儿(还在发送值),关闭测量(不发值),此时打开串口,按理来说应该没有值,但是会保留最后一次测量的发送值,这个过程完全没有receive(如果是PC主机一发单片机回应,这是正常的)就只有一直发送的情况下会有这种现象,这种情况怎么解决呢?

问答
赞0
评论
2026-02-04
赞0
评论
2026-02-04
您需要登录后才可以回复 登录 | 注册