Nuvoton NuMaker-IoT-M487 入门 - FreeRTOS
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

Nuvoton NuMaker-IoT-M487 入门

本教程提供有关 Nuvoton NuMaker-IoT-M487 开发主板入门的说明。系列微控制器,并包含内置的 RJ45 以太网和 Wi-Fi 模块。如果您没有 Nuvoton NuMaker-IoT-M487,请访问 AWS Partner Device Catalog,从我们的合作伙伴处购买一个。

在开始之前,您必须配置 AWS IoT 和 FreeRTOS 软件以将开发主板连接到 AWS 云。有关说明,请参阅初始步骤. 在本教程中,FreeRTOS 下载目录的路径称为 freertos

Overview

该教程将指导您完成以下步骤:

  1. 在您的主机上安装软件,以开发和调试微控制器主板的嵌入式应用程序。

  2. 将 FreeRTOS 演示应用程序交叉编译为二进制映像。

  3. 将应用程序二进制映像加载到您的主板中,然后运行该应用程序。

设置开发环境

Keil MDK Nuvoton 版本是专为 Nuvoton M487 主板的应用程序开发和调试而设计的。Keil MDK v5 Essential、Plus 或 Pro 版本也适用于 Nuvoton M487(Cortex-M4 核心)MCU。您可以下载具有 Nuvoton Cortex-M4 系列MCUs价格折扣的 Keil MDK Nuvoton 版本。 仅在 Windows 上支持 Keil MDK。

安装适用于 NuMaker-IoT-M487 的开发工具

  1. 从 Keil MDK 网站下载 Keil MDK Nuvoton 版本

  2. 使用您的许可证在主机上安装 Keil MDK。Keil MDK 包括 Keil µVision IDE、C/C++ 编译工具链和 µVision 调试器。

    如果您在安装期间遇到问题,请联系 Nuvoton 寻求帮助。

  3. 安装 Nu-Link_Keil_Driver_V3.00.6951(或最新版本),它位于 Nuvoton 开发工具页面上。

构建并运行 FreeRTOS 演示项目

构建 FreeRTOS 演示项目

  1. 打开 Keil µVision IDE。

  2. File (文件) 菜单上,选择 Open (打开). 在 Open file (打开文件) 对话框中,确保将文件类型选择器设置为 Project Files (项目文件).

  3. 选择要构建的 Wi-Fi 或以太网演示项目。

    • 要打开 Wi-Fi 演示项目,请在 aws_demos.uvproj 目录中选择目标项目 freertos\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demos

    • 要打开以太网演示项目,请在 aws_demos_eth.uvproj 目录中选择目标项目 freertos\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demos_eth

  4. 要确保具有正确的设置以刷写主板,请在 IDE 中右键单击 aws_demo 项目,然后选择 Options (选项). (有关更多详细信息,请参阅Troubleshooting

  5. Utilities (实用程序) 选项卡上,验证是否已选择 Use Target Driver for Flash Programming (使用目标驱动程序进行闪存编程),并且 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 已设置为目标驱动程序。

  6. Debug (调试) 选项卡上,选择 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 旁边的 Settings (设置).

  7. 确认 Chip Type (芯片类型) 设置为 M480.

  8. 在 Keil uVision IDE Project (项目) 导航窗格中,选择 aws_demos 项目。在 Project (项目) 菜单上,选择 Build Target (构建目标).

您可以使用 AWS IoT 控制台中的 MQTT 客户端监控您的设备发送到 AWS 云的消息。

使用 AWS IoT MQTT 客户端订阅 MQTT 主题

  1. 登录到 AWS IoT 控制台.

  2. 在导航窗格中,选择 Test (测试) 以打开 MQTT 客户端。

  3. Subscription topic (订阅主题)中,输入 iotdemo/#,然后选择 Subscribe to topic (订阅主题).

运行 FreeRTOS 演示项目

  1. 将 Numaker-IoT-M487 主板连接到您的主机(计算机)。

  2. 重新构建项目。

  3. 在 Keil µVision IDE 中,在 Flash (刷写) 菜单上选择 Download (下载).

  4. Debug (调试) 菜单上,选择 Start/Stop Debug Session (启动/停止调试会话).

  5. 当调试器在 main() 中的断点处停止时,打开 Run (运行) 菜单,然后选择 Run (F5) (运行 (F5)).

    在 AWS IoT 控制台的 MQTT 客户端中,您应看到设备发送的 MQTT 消息。

将 CMake 与 FreeRTOS 结合使用

您还可以使用 CMake 构建和运行 FreeRTOS 演示应用程序或使用第三方代码编辑器和调试工具开发的应用程序。

确保您已安装 CMake 生成系统。按照使用 CMake 配 FreeRTOS中的说明进行操作,然后执行本节中的步骤。

注意

确保编译器 (Keil) 位置的路径位于 Path 系统变量中,例如,C:\Keil_v5\ARM\ARMCC\bin.

您还可以使用 AWS IoT 控制台中的 MQTT 客户端监控您的设备发送到 AWS 云的消息。

使用 AWS IoT MQTT 客户端订阅 MQTT 主题

  1. 登录到 AWS IoT 控制台.

  2. 在导航窗格中,选择 Test (测试) 以打开 MQTT 客户端。

  3. Subscription topic (订阅主题)中,输入 iotdemo/#,然后选择 Subscribe to topic (订阅主题).

从源文件中生成构建文件并运行演示项目

  1. 在您的主机上,打开命令提示符并导航到 freertos folder。

  2. 创建一个文件夹以包含生成的构建文件。我们将此文件夹称为 BUILD_FOLDER.

  3. 为 Wi-Fi 或以太网演示生成构建文件。

    • 对于 Wi-Fi:

      导航到包含 FreeRTOS 演示项目的源文件的目录。然后,运行以下命令来生成构建文件。

      cmake -DVENDOR=nuvoton -DBOARD=numaker_iot_m487_wifi -DCOMPILER=arm-keil -S . -B BUILD_FOLDER -G Ninja
    • 对于以太网:

      导航到包含 FreeRTOS 演示项目的源文件的目录。然后,运行以下命令来生成构建文件。

      cmake -DVENDOR=nuvoton -DBOARD=numaker_iot_m487_wifi -DCOMPILER=arm-keil -DAFR_ENABLE_ETH=1 -S . -B BUILD_FOLDER -G Ninja
  4. 运行以下命令以生成二进制文件,以便刷写到 M487 上。

    cmake --build BUILD_FOLDER

    此时,二进制文件 aws_demos.bin 应位于 BUILD_FOLDER/vendors/Nuvoton/boards/numaker_iot_m487_wifi 文件夹中。

  5. 要将主板配置为刷写模式,请确保打开了 MSG 开关(ICE 上的 ISW1 的第 4 个开关)。在插入主板时,将分配一个窗口(和驱动器)。(请参阅Troubleshooting.)

  6. 打开终端仿真器以通过 UART 查看消息。按照中的说明进行操作。安装终端仿真器.

  7. 将生成的二进制文件复制到设备上以运行演示项目。

    如果您使用 AWS IoT MQTT 客户端订阅了 MQTT 主题,则会在 AWS IoT 控制台中看到您的设备发送的 MQTT 消息。

Troubleshooting

  • 如果您的 Windows 无法识别设备 VCOM,请从链接 NuMakerNu-Link USB Driver v1.6 安装 Windows 串行端口驱动程序。

  • 如果通过 Nu-Link 将您的设备连接到 Keil MDK (IDE),请确保 MSG 开关(ICE 上的 ISW1 的第 4 个开关)为 OFF,如图所示。

如果您在设置开发环境或连接到主板时遇到问题,请联系 Nuvoton.

在 Keil μVision 中调试 FreeRTOS 项目

在 Keil μVision 中启动调试会话

  1. 打开 Keil μVision。

  2. 按照FreeRTOS中的步骤构建 构建并运行 FreeRTOS 演示项目. 演示项目。

  3. Debug (调试) 菜单上,选择 Start/Stop Debug Session (启动/停止调试会话).

    当您启动调试会话时,将显示 Call Stack + Locals (调用堆栈 + 局部变量) 窗口。main()Vision 将演示刻录到主板,运行演示,并在 函数开始时停止。

  4. 在项目的源代码中设置断点,然后运行代码。项目应如下所示。

μVision 调试设置故障排除

如果在调试应用程序时遇到问题,请检查是否在 Keil μVision 中正确设置了调试设置。

验证 μVision 调试设置是否正确

  1. 打开 Keil μVision。

  2. 在 IDE 中右键单击 aws_demo 项目,然后选择 Options (选项).

  3. Utilities (实用程序) 选项卡上,验证是否已选择 Use Target Driver for Flash Programming (使用目标驱动程序进行闪存编程),并且是否已将 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 设置为目标驱动程序。

  4. Debug (调试) 选项卡上,选择 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 旁边的 Settings (设置).

  5. 确认 Chip Type (芯片类型) 设置为 M480.