请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:MSPM0G3507 工具与软件:
我通过两个中断来配置 UART。 Rx 中断和 Rx 超时。 但似乎两者都没有协同工作。 当我禁用 RX 中断时、RX 超时中断正常工作。
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.
工具与软件:
我通过两个中断来配置 UART。 Rx 中断和 Rx 超时。 但似乎两者都没有协同工作。 当我禁用 RX 中断时、RX 超时中断正常工作。
我的第一个猜测是、为了响应 RX 中断、您清空 Rx FIFO。 仅当 Rx FIFO 不为空时、才会触发 RTOUT 中断[REF TRM (SLAU846B)表18-8]。
如果是、解决方案是让 RX 中断始终在 FIFO 中保留(至少)一个字节(并且也许增加 FIFO 阈值)。 然后对于 RTOUT 中断、您可以清空 FIFO、从而在下一个字节到达之前禁用该功能。
我注意到在布置之后、UART 没有一个指示 Rx FIFO 中有多少字节的寄存器。
下面介绍了一种处理这一问题的策略: