qqhengg 发表于 2019-7-10 11:07:00

STM32同时收发的问题

请教各位一个问题,STM32串口同时使能接收和发送,开启接收中断,出现一个问题,在收数据的时候,发送数据,导致RXNE这个位被清掉了,调试了一天也没找到是哪里置的,大家有没有遇到过这种现象?
ps:如果接收完数据再发送不会有这个问题

slong127 发表于 2019-7-11 11:36:19

我前两天刚好也遇到这问题,跟你说的一模一样,尝试使用不同的发送方式也没能很好的解决,最后只能修改成接收完数据后再发送,实际测试小数据量的话对使用效果没什么影响。

toofree 发表于 2019-7-11 10:24:50

RXNE被清除的条件是,读接收数据寄存器,或写状态寄存器的RXNE位为0。
在你的发送程序中到底做了什么?不要去读接收数据寄存器。如果进行了写状态寄存器,请保留RXNE位的当前状态,不要改变。


斯文人 发表于 2019-7-11 09:12:07

发送中断平时是关闭的,只有你要发数据的时候才打开,发完立马就关闭,我的程序都是这样实现,接收中断需要一直开启
页: [1]
查看完整版本: STM32同时收发的问题