rtt 4.1 h750芯片
usb vcom是能正常发出东西来的,但是只发一次之后就没反应了
我之前使用的是cmd在终端发送,发完了之后终端就挂了,然后其他线程还在正常跑
我试了一下放到某个while(1)的线程内,然后那个线程发完之后就不再执行了,其他线程包括终端也是正常的
这个玩意搞得我头大,请教一下各位
继续往下打断点,发现卡在等待这个条件了
tx_fifo->tx_cpt一直不满足,然后我在所有的usb的rt_hw_serial_isr打了断点,都不进去,有一个是在_vcom_tx里面 还有两个是在vcom的线程内
openflag的判断位置我改为RT_DEVICE_FLAG_TX_NON_BLOCKING了,到898行之前都是正常的,跑完那两句openflag被清零了
再追加一下debug的现象,太诡异了
这两个位置,如果一个一个函数跳过去是没问题的,但是会一直进来
如果两个断点间直接全速跑ref_count和openflag值就没了
更新一下,USB VCOM得搭配serial v1来用,我用的是v2 破案了
我将初始化放在main线程,然后在终端里面启动,发了一次就卡死,usb那边我开了debug选项