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.

[参考译文] MSP430FR5994:UART UCTXIFG 和 UCTXCPTIFG 标志是否一起设置?

Guru**** 2589300 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/703897/msp430fr5994-are-the-uart-uctxifg-and-uctxcptifg-flags-set-together

器件型号:MSP430FR5994

大家好、

需要注意的是、UCTXCPTIFG 按照 USCI42所述被断开、它声明 :"UCTXCPTIFG 标志在每个 UART 字节传输的最后一个停止位被触发"。

如果该语句仍然正确、UCTXCPTIFG 仍可与 UCTXIFG 一起使用、以确认 Tx 是否按以下顺序完成:

-在 UCTXIFG 上、不再发送字节

-禁用 UCTXIE

-将0写入 UCTXCPTIFG

-可配置 UCTXCPTIE

无中断、轮询 UCTXIFG、清除 UCTXCPTIFG、然后轮询 UCTXCPTIFG、在启用 Rx 之前应完成 Tx?

是否有人可以确认这是否有效?  如果无法 更正 USCI42、请进行更正?

CTM

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 CTM:

    从理论上讲、您所描述的内容可能起作用、但您可能会遇到时序问题。

    如果您的波特率较高、或者如果另一个中断使轮询停止、则在传输完最后一个字节后、在您轮询之前、UCTXCPTIFG 可能会被清除。

    谢谢、

    Mitch
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    什么将清除 UCTXCPTIFG?

    在实践中、我将使用 ISR 等待最终标志。

    以下是300 BD 的轮询跟踪、其中 Mecrcp 为:  

    0ms -写入 TXBUF  
    5ms - UCTXIFG 被置位  
    40ms - UCTXCPTIFG 被置位
    在2400 BD 时、我得到以下结果:
    0ms -写入 TXBUF
    2ms - UCTXIFG 被置位  
    6ms - UCTXCPTIFG 被置位
    在9600 BD 时、我得到以下结果:
    0ms -写入 TXBUF  
    1ms - UCTXIFG 被置位  
    3ms - UCTXCPTIFG 被置位

    在发送2个字节时、您需要注意 UCTXCPTIFG 的错误设置、这是我接下来要测试的内容。  将会通知您。

    C:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    以下是300 BD 和 Mecrisp forth 的更多轮询结果:

    0ms -写入 TXBUF

    5ms - UCTXIFG 被置位-写入 TXBUF

    40ms - UCTXCPTIFG 被置位-复位

    45ms - UCTXIFG 被置位

    (笑声) TX***寄存器仍处于忙状态...

    80ms - UCTXCPTIFG 被置位

    这是一个非常重要的结果。  请注意、UCTXCPTIFG 在 UCTXIFG 被置位前大约5ms 被置位、这很奇怪!

    我没有范围。  是否有人可以确认 UCTXCPTIFG 确实只有在最后一个停止位之后才被置位。

    一旦最后一个数据位被发送、预期的序列将是 UCTXIFG、之后是奇偶校验后的 UCTXCPTIFG -和停止位、而不是另一种方式!

    (笑声) 还有其他建议吗?

    C:

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 CTM:

    感谢您提供信息。 由于 UCTXCPTIFG 运行有故障、时序可能不可靠。 如果可能、我会尽量避免在您的应用中使用它。 给您带来的不便、我深表歉意。

    Mitch