lusson 发表于 2009-11-29 22:15:18

NEC的串口有点要注意,溢出之后串口将不再接收

之前没注意这个问题,串口在某些特定条件下死掉了不能再接收数据了,同步复位下后OK

后面看手册看到关于溢出位的解释,溢出发生后,串口对于接下来接收到的数据将忽略掉,在清掉溢出位后才能重新恢复接收
好象51,AVR之类的不是这样设计的.

供参考.

jdjsxf 发表于 2009-11-30 10:17:56

手册有说明。

jorbey 发表于 2011-5-23 10:51:02

你好
溢出位读取后不就自动清零了么?
我也遇到溢出后不再收数的问题
请这种错误产生后程序里应当如何处理?
谢谢。

lusson 发表于 2011-5-23 10:56:04

就是要增加判断溢出啊。之前没注意这个问题,,在程序来不及收的时候产生溢出后就不再接收了。

jinbangzhou 发表于 2011-7-13 11:52:45

先判断溢出状态,再读取数据寄存器就清除溢出标志了

asj1989 发表于 2011-7-13 12:30:22

开启串口错误中断,然后在中断程序里面去把RXD0给读出来就行了。

lllmcu 发表于 2011-7-22 10:08:41

我也碰到过。直接用软件做成模拟串口,竟然可以,因此也是确定这个问题。
如发现溢出,清掉标志位,重设一下,就可以了;
其他的单片机,感觉没这个问题
页: [1]
查看完整版本: NEC的串口有点要注意,溢出之后串口将不再接收