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.

[参考译文] RTOS/MSP430F6779A:关于UART_READ() API

Guru**** 2536010 points
Other Parts Discussed in Thread: MSP430F6779A, MSP430F5529, MSP-EXP430F5529LP

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/584577/rtos-msp430f6779a-about-uart_read-api

部件号:MSP430F6779A
主题中讨论的其他部件: MSP430F5529,MSP-EXP430F5529LP

工具/软件: TI-RTOS

你好。

我有 两个问题。

我正在使用TI-RTOS UART驱动程序示例。

我认为UART_READ() API的循环时间 似乎很长。

1.是否有 任何包含UART_READ() API代码内容的c文件  ?

2.是否有任何解决方案可将 UART_Read() API的循环时间减至最少 ?

此致,

Uchida-k

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

    所有驱动程序源均随TI-RTOS产品提供。 源文件可以位于:

    <tirtos_install_dir>/products/tidrivers_<version>/packages/ti/drivers/UART/*

    MSP430F6779A具有eUSCI外围设备,因此您应该参考UARTEUSI.*驱动程序。 您可以随意修改驱动程序,或者重建驱动程序库(有关说明,请参见用户指南),或者只需将源文件复制到项目中,这些文件就会随应用程序一起生成。

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

    你好,Emmanuel:

    感谢您的回复。

    我正在使用UART_READ()API,并面临以下问题。

      从接收数据到退出 UART_READ()的周转时间需要398us。

    由于UART_READ ()的处理时间,下一个数据处理出现故障

    测量的波形如下所示

    通道1:GPIO

    通道2:UART_RXD

    测量时的设置如下

    ・MCLK:8MHz (我再也不能提高工作频率)

    ・波特率:11.52万

    ・ 使用UART_READ()接收1字节数据

    ・在退出UART_READ后GPIO立即变为高电平()

    是否有办法 解决上述问题?

    我已拍摄UART_READ()的源代码,但我无法理解UART_READ()的进程内容。

    你能给我一些建议来缩短UART_READ()的循环时间吗?

    此致,

    Uchida-k

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

    是否可以发布您正在使用的UART配置(阻塞或回调,数据或文本等)?

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

    感谢您的回复。

    我使用TI-RTOS exsamples中的uartecho测量了回转周期。
    UART设置如下所示。

    UART_HANDLE UART;
    UART_Params uartParams;

    UART_PARAM_INIT (&uartParams);
    uartParams.writeDataMode = UART_DATA_binary;
    uartParams.readDataMode = UART_DATA_binary;
    uartParams.readReturnMode = UART_RETURE_FULL;
    uartParams.readEcho = UART_ECHO_OFF;
    uartParams.baudrate = 11.52万;
    UART = UART_OPEN (Board_UART0,&uartParams);

    UART_READ()似乎作为阻塞模式工作,并接收8位char数据。

    此致,

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

    很抱歉回复太晚。

    这是一个非常长的时间。 应用程序中是否有其他任务? CPU以何种频率运行? 您是否在项目中使用已分析的库? 是否可以附加*。cfg文件?

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

    你好,Emmanuel:

    感谢您的回复。

    应用程序中是否有其他任务?

     您是否在项目中使用已分析的库?

    是否可以附加*。cfg文件?

    ->我正在使用“uartecho_MSP_EXP430F5529LP_TI_MSP430F5529”5529”

      我在这个项目中只更改了工作频率和GPIO测试代码。

      现在,我正在使用MSP-EXP430F5529LP测试此项目。

    CPU以何种频率运行?  

    ->工作频率为8MHz。

      我不能再提了。

    您能告诉我为什么UART_Read() API的循环时间很长吗?

    此致,

    Uchida-k