实现 configPRINT_STRING() 宏 - FreeRTOS
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

实现 configPRINT_STRING()

移植 FreeRTOS 库之前,必须实现 configPRINT_STRING() 宏。FreeRTOS 使用 configPRINT_STRING() 将测试结果输出为人类可读的 ASCII 字符串。

先决条件

要实现 configPRINT_STRING() 宏,需要具备以下条件:

  • 支持 UART 或虚拟 COM 端口输出的开发主板。

  • 针对您的平台配置的 FreeRTOS 项目以及移植测试 IDE 项目。

    有关信息,请参阅为移植设置 FreeRTOS 源代码

实现

实现 configPRINT_STRING()

  1. 将您的设备连接至终端仿真器以输出测试结果。

  2. 打开 /vendors/vendor/boards/board/aws_tests/application_code/main.c 文件,然后在 prvMiscInitialization() 函数中找到对 configPRINT_STRING("Test Message") 的调用。

  3. 在对 configPRINT_STRING("Test Message") 的调用之前,添加使用供应商提供的 UART 驱动程序的代码,以将 UART 波特率级别初始化为 115200。

  4. 打开 /vendors/vendor/boards/board/aws_tests/config_files/FreeRTOSConfig.h,然后找到 configPRINT_STRING() 的空定义。该宏使用以 NULL 终止的 ASCII C 字符串作为其唯一参数。

  5. 更新 configPRINT_STRING() 的空定义,使其调用供应商提供的 UART 输出函数。

    例如,假设 UART 输出函数具有以下原型:

    void MyUARTOutput( char *DataToOutput, size_t LengthToOutput );

    您可以将 configPRINT_STRING() 实现为:

    #define configPRINT_STRING( X ) MyUARTOutput( (X), strlen( (X) ) )

测试

构建并执行测试演示项目。如果 Test Message 显示在 UART 控制台中,说明已正确连接和配置该控制台、configPRINT_STRING() 可正常工作并且测试已完成。您可以从 prvMiscInitialization() 中删除对 configPRINT_STRING("Test Message") 的调用。

实现 configPRINT_STRING() 宏后,您可以开始为您的设备配置 FreeRTOS 内核移植。有关说明,请参阅配置 FreeRTOS 内核移植