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/TM4C1294NCPDT:TI-RTOS UART 控制台示例-配置波特

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/566067/rtos-tm4c1294ncpdt-ti-rtos-uart-console-example---configuring-baud

器件型号:TM4C1294NCPDT

工具/软件:TI-RTOS

研究员,

刚刚开始进入 TI-RTOS。 我在使用 TivaWare 方面拥有合理的经验。 IDE 是 CCS7。

我得到了正确导入和编译的空示例、之后我得到 了 uartconsole_EK_TM4C1294XL_TI 示例以正确编译和运行、并可以通过 UART 端口与 MCU 进行交互。

作为这个问题的基础、我实际上无法找到在该示例上配置 UART 波特率的位置。 我尝试单步调试、单步进入等、但 无法真正解决。 因此、提前感谢您在这里提供的任何帮助。

布鲁诺

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

    您使用的是 TI-RTOS 的哪个版本?

    谢谢、
    Gerardo
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Gerardo、
    TI-RTOS 是用于 TivaC 的最新版本:2.16.1.14
    XDCtools 的重要性为3.32.1.22。
    布鲁诺
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Bruno、

    在示例的主函数上,您调用 add_device,并将指针从 UARTUtils.h 传递到函数 UARTUtils_deviceopen() 该函数被调用以打开 UART,然后该函数依次从 UARTUtils.c 中调用 openHandle(),您也可以看到它设置了:

    uartParams.baudrate = 9600; 

    这就是波特率的设置方式。

    谢谢、
    Gerardo

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

    非常感谢您提供如此详细的答复。 驱动程序上使用的低级 C 编程通常很复杂、实际上我没有注意到程序步进中的一些调用...

    为了供将来参考、我可以看到在 main 内、第一次定义波特率时是在 freopen 内的某个位置("UART:0、"W"、stdout");
    -不幸的是、我无法再次找到正确的流程来到达那里... 现在、我必须将此问题搁置一段时间。

    但是、鉴于这是一个示例实现、配置参数实际上是主代码的一部分是否明智、即使它们与默认值恰好匹配? 在主代码中、我甚至找不到 uartParams 的声明。 当然、如果我再花15分钟左右的时间来完成任务、我会在某个地方找到它-或者我确实没有找到足够的文档来完成所有这些工作、并且我忽略了一些 PDF 吗?

    再次感谢、抱歉听到投诉音...

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

    该示例之所以如此复杂、是因为它允许使用 TI-RTOS UART 驱动程序来实现 C stdio、stdin 和 stdout 流、以便通过 UART 进行读取和写入。 因此,对 printf()等函数的调用将通过 UART 进行,因此需要设置更多的内容。 您提到的对 freopen()的调用是需要完成的额外配置的一部分。

    我不确定您是否确实需要所有这些? 如果您只需要从 UART 进行读写操作、则最好使用 UART 回显示例。 此示例具有更简单的配置、您可以看到如何在主文件中设置所有参数。

    希望这有所帮助、
    Gerardo