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.

[参考译文] TMS320F280025:SCI driverlib 中的 SCI_IsTransmitterBusy ()

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/958491/tms320f280025-sci_istransmitterbusy-in-sci-driverlib

器件型号:TMS320F280025

您好、香榭丽舍

sci.h 中有一个与捕获的代码相同的奇怪代码。 启用 TX FIFO 后、如果 FIFO 为空、SCI_IsTransmitterBusy ()返回\b false。 但下面的代码始终返回\b false、因为"SCI_O_FFTX & FFTX_TXFFST_M (0x1F00)"不能等于0x1F00。

我认为应该像这样修改这个代码:  
return (((HWREGH (base + SCI_O_FFTX)& SCI_FFTX_TXFFST_M)!= 0)  ? true:false);

所有 C2000 driverlibs 都有相同的问题。 我是否有任何误解?  

谢谢、
Steve

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

    您好、Steve、

    你是对的。 应该是这样的  

    return (((HWREGH (base + SCI_O_FFTX)& SCI_FFTX_TXFFST_M)!= 0)  ? true:false);

    以检查0个 FIFO 字。 将在下一个版本中对其进行更正。

    谢谢、

    Yashwant