This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
另外如果有用FIFO也请看一下,FIFO中读出的数据,是否有某个数据的SCIRXBUF[SCIFFFE]置位
这个问题,我认为争议的焦点在 BRKDT位被置位 但SCIRXST[FE]没置位;我试了很多次,没能够让BRKDT位置位而SCIRXST[FE]不置位。
那么有下面几种可能
1、我搞错了,有其他方法导致BRKDT产生,但不需要missing stop bit,或者framing error不会产生
2、您的测试方法有问题
3、芯片有问题,不过SCI这个模块出来了十几年,这个可能可以排除。
我找TI美国再去确认一下,明天回复您。
如第一个帖子谈到,我这里最近实验做起来不方便,只能大致试一下,但我试下来FE都是置位的。
对于这个问题,我得到的回复如下:
As SCI user guide mention:"A break condition occurs when the SCI receiver data line (SCIRXD) remains continuously low for at least ten bits,beginning after a missing first stop bit“.
So RX line should cause a frame error,set SCIRXST[FE] ,then after this missing stop bit which cause frame error, if ten more bit durations are low on RX, then a BRKDT occurs,SCIRXST[BRKDT] set.
Is there anything I have misunderstood?Does any other way cause BRKDT set and SCIRXST[FE] didn't set?
You are correct that FE occurs first and then if at least ten more bit durations are low on RX, a BRKDT will occur. This is the only way for a BRKDT to occur.
另外这个帖子,楼主参考一下:
楼主如果最后找出原因记得分享一下。