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.

[参考译文] CCS/TM4C1294NCPDT:传输完成后、UART 写回调

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/862581/ccs-tm4c1294ncpdt-uart-writecallback-after-transmission-complete

器件型号:TM4C1294NCPDT

工具/软件:Code Composer Studio

你(们)好  

是否可以在传输完成后将 TI RTOS WriteCallBack 转换为触发?

当前默认值在开始传输时被调用。  

UART_PARAMS_INIT (uartParams);

uartParams.writeMode = UART_MODE_CALLBACK;

uartParams.writeCallback = SerialWriteCallback;

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

    尊敬的 Ronnie:

    您正在使用哪种 UART 驱动程序(UARTTivaDMA 或 UARTTiva)? 从软件角度看、当驱动程序完成传输时、调用回调。

    Todd

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

    你(们)好

    感谢您的回复。  

    驱动程序看起来是使用 UARTTivaDMA 进行设置的,其声明类型为: static const UARTTivaDMA_HWAttr

    我做了一个实验,在调用 UART_write()之前将 GPO 写入高电平。 我将在 writecallback 函数中将其写回低电平。

    如我附加的波形所示、回写操作会在传输开始时进入。  

    我们将希望回写在传输后进入。 不知道这是可能的吗?  

    此致、Ronnie

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

    也许您的 TX 函数可以在最后一位离开发送器后操纵 TX 忙标志和回调? 否则、请将此忙线添加到您的呼叫方、以便他知道 TX 通道为软件允许发送(CTS)通道。  

    if (!(HWREG (UART0_BASE + UART_O_FR)& UART_FR_BUSY)
    ){
    TxComplete ();
    } 

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

    我更喜欢保留 Tivaware 库的原样。

    请原谅我,如果我看起来很业余,因为我仍然是一个很新的 TI 嵌入式产品。

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

    Ronnie、您好!

    同意 RTOS 回电、谁知道如果修改会发生什么。 我在许多函数中使用 TX 忙标志、这是一种欺骗!  

    谢谢你的回复并解决:-)