本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Nuvoton NuMaker-ioT-m487 入门
此参考集成托管在 Amazon-FreeRTOS 存储库中,该存储库已过时。建议您在创建新项目时从这里开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的现有 FreeRTOS 项目,请参阅亚马逊 FreeRTOS Github 存储库迁移指南。
本教程提供了 Nuvoton NuMaker-IOT-M487 开发板的入门说明。该系列微控制器,包括内置 RJ45 以太网和 Wi-Fi 模块。如果您没有 Nuvoton NuMaker-IoT-M487,请访问Amazon合作伙伴设备目录
在开始之前,你必须配置Amazon IoT好你的 FreeRTOS 软件,将你的开发板连接到Amazon云端。有关说明,请参阅 初始步骤。在本教程中,FreeRTOS 下载目录的路径被称为
。freertos
概览
该教程将指导您完成以下步骤:
-
在您的主机上安装软件,以开发和调试微控制器主板的嵌入式应用程序。
-
将 FreeRTOS 演示应用程序交叉编译为二进制图像。
-
将应用程序二进制映像加载到您的主板中,然后运行该应用程序。
设置开发环境
Keil MDK Nuvoton 版本是专为 Nuvoton M487 主板的应用程序开发和调试而设计的。Keil MDK v5 Essential、Plus 或 Pro 版本也适用于 Nuvoton M487(Cortex-M4 核心)MCU。您可以下载具有 Nuvoton Cortex-M4 系列 MCU 价格折扣的 Keil MDK Nuvoton 版本。仅在 Windows 上支持 Keil MDK。
安装 NuMaker-IOT-m487 的开发工具
-
从 Keil MDK 网站中下载 Keil MDK Nuvoton 版本
。 -
使用您的许可证在主机上安装 Keil MDK。Keil MDK 包括 Keil µVision IDE、C/C++ 编译工具链和 µVision 调试器。
如果您在安装过程中遇到问题,请与 Nuvoton
联系以寻求帮助。 -
安装位于 Nuv oton 开发工具
页面上的 nu-link_keil_driver_v3.06.7215R(或最新版本)。
生成并运行 FreeRTOS 演示项目
构建 FreeRTOS 演示项目
-
打开 Keil µVision IDE。
-
在 File (文件) 菜单上,选择 Open (打开)。在 Open file (打开文件) 对话框中,确保将文件类型选择器设置为 Project Files (项目文件)。
-
选择要构建的 Wi-Fi 或以太网演示项目。
-
要打开 Wi-Fi 演示项目,请在
目录中选择目标项目freertos
\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demosaws_demos.uvproj
。 -
要打开以太网演示项目,请在
目录中选择目标项目freertos
\projects\nuvoton\numaker_iot_m487_wifi\uvision\aws_demos_ethaws_demos_eth.uvproj
。
-
-
要确保具有正确的设置以刷写主板,请在 IDE 中右键单击
aws_demo
项目,然后选择 Options (选项)。(有关更多详细信息,请参阅问题排查。) -
在 Utilities (实用程序) 选项卡上,确认已选择 Use Target Driver for Flash Programming (使用目标驱动程序进行刷写编程),并将 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 设置为目标驱动程序。
-
在 Debug (调试) 选项卡上,选择 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 旁边的 Settings (设置)。
-
确认 Chip Type (芯片类型) 设置为 M480。
-
在 Keil µVision IDE Project (项目) 导航窗格中,选择
aws_demos
项目。在 Project (项目) 菜单上,选择 Build Target (构建目标)。
您可以使用 Amazon IoT 控制台中的 MQTT 客户端监控您的设备发送到 Amazon 云的消息。
使用 Amazon IoT MQTT 客户端订阅 MQTT 主题
-
登录到 Amazon IoT 控制台
。 -
在导航窗格中,选择 “测试”,然后选择 MQTT 测试客户端打开 MQTT 客户端。
-
在 Subscription topic (订阅主题)中,输入
,然后选择 Subscribe to topic (订阅主题)。your-thing-name
/example/topic
要运行 FreeRTOS 演示
-
将 Numaker-IoT-M487 主板连接到您的主机(计算机)。
-
重新构建项目。
-
在 Keil µVision IDE 中,在 Flash (刷写) 菜单上选择 Download (下载)。
-
在 Debug (调试) 菜单上,选择 Start/Stop Debug Session (启动/停止调试会话)。
-
当调试器在
main()
中的断点处停止时,打开 Run (运行) 菜单,然后选择 Run (F5) (运行 (F5))。在 Amazon IoT 控制台的 MQTT 客户端中,您应看到设备发送的 MQTT 消息。
在 FreeRTOS 中使用 cMake
您也可以使用 CMake 来构建和运行 FreeRTOS 演示应用程序或使用第三方代码编辑器和调试工具开发的应用程序。
确保您已安装 CMake 构建系统。按照在 FreeRTOS 中使用 cMake中的说明进行操作,然后执行本节中的步骤。
确保编译器 (Keil) 位置的路径位于 Path 系统变量中,例如,C:\Keil_v5\ARM\ARMCC\bin
。
您还可以在Amazon IoT控制台中使用 MQTT 客户端来监控您的设备发送到Amazon云端的消息。
使用 Amazon IoT MQTT 客户端订阅 MQTT 主题
-
登录到 Amazon IoT 控制台
。 -
在导航窗格中,选择 “测试”,然后选择 MQTT 测试客户端打开 MQTT 客户端。
-
在 Subscription topic (订阅主题)中,输入
,然后选择 Subscribe to topic (订阅主题)。your-thing-name
/example/topic
从源文件中生成构建文件并运行演示项目
-
在主机上,打开命令提示符并导航到
freertos
文件夹。 -
创建一个文件夹以包含生成的构建文件。我们将该文件夹称为
BUILD_FOLDER
。 -
为 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
-
-
运行以下命令以生成二进制文件,以便刷写到 M487 上。
cmake --build
BUILD_FOLDER
此时,二进制文件
aws_demos.bin
应位于
文件夹中。BUILD_FOLDER
/vendors/Nuvoton/boards/numaker_iot_m487_wifi -
要将主板配置为刷写模式,请确保打开了 MSG 开关(ICE 上的 ISW1 的第 4 个开关)。在插入主板时,将分配一个窗口(和驱动器)。(请参见 问题排查。)
-
打开终端仿真器以通过 UART 查看消息。按照安装终端仿真器中的说明进行操作。
-
将生成的二进制文件复制到设备上以运行演示项目。
如果您使用 Amazon IoT MQTT 客户端订阅了 MQTT 主题,则会在 Amazon IoT 控制台中看到您的设备发送的 MQTT 消息。
问题排查
-
如果你的 Windows 无法识别设备
VCOM
,请通过链接 Nu-Link USB Driver v1.6 安装 NuMaker Windows 串行端口驱动程序。 -
如果通过 Nu-Link 将您的设备连接到 Keil MDK (IDE),请确保 MSG 开关(ICE 上的 ISW1 的第 4 个开关)为 OFF,如图所示。
如果您在设置开发环境或连接到主板时遇到问题,请联系 Nuvoton
在 Keil μVision 中调试 FreeRTOS 项目
在 Keil μVision 中启动调试会话
-
打开 Keil μVision。
-
按照步骤在中构建 FreeRTOS 演示项目生成并运行 FreeRTOS 演示项目。
-
在 Debug (调试) 菜单上,选择 Start/Stop Debug Session (启动/停止调试会话)。
在启动调试会话时,将显示 Call Stack + Locals (调用堆栈 + 局部变量) 窗口。μVision 将演示刷写到主板上,运行演示,然后在
main()
函数开始处停止。 -
在项目的源代码中设置断点,然后运行代码。项目应如下所示。
μVision 调试设置故障排除
如果在调试应用程序时遇到问题,请检查是否在 Keil μVision 中正确设置了调试设置。
验证 μVision 调试设置是否正确
-
打开 Keil μVision。
-
在 IDE 中右键单击
aws_demo
项目,然后选择 Options (选项)。 -
在 Utilities (实用程序) 选项卡上,确认已选择 Use Target Driver for Flash Programming (使用目标驱动程序进行刷写编程),并将 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 设置为目标驱动程序。
-
在 Debug (调试) 选项卡上,选择 Nuvoton Nu-Link Debugger (Nuvoton Nu-Link 调试器) 旁边的 Settings (设置)。
-
确认 Chip Type (芯片类型) 设置为 M480。