MediaTek mt7697HX 开发套件入门 - FreeRTOS

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

MediaTek mt7697HX 开发套件入门

重要

该参考集成托管在已弃用的 Amazon-FreeRTOS 存储库中。当您创建新项目时,我们建议从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的 FreeRTOS 项目,请参阅 Amazon-FreeRTOS Github 存储库迁移指南

本教程提供了 MediaTek mt7697HX 开发套件的入门说明。如果您没有 MediaTek MT7697HX 开发套件,请访问AWS合作伙伴设备目录从我们的合作伙伴处购买。

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

概述

本教程包含有关以下入门步骤的说明:

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

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

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

  4. 跨串行连接与主板上运行的应用程序进行交互,以便进行监视和调试。

设置开发环境

在设置环境之前,请将计算机连接到 MediaTek MT7697HX 开发套件上的 USB 端口。

下载并安装 Keil MDK。

您可以使用基于 GUI 的 Keil 微控制器开发工具包 (MDK),在主板上配置、构建并运行 FreeRTOS 项目。Keil MDK 包括 μVision IDE 和 μVision Debugger。

注意

只有 Windows 7、Windows 8 和 Windows 10 64 位计算机上支持 Keil MDK。

下载并安装 Keil MDK
  1. 转到 Keil MDK Getting Started (Keil MDK 入门) 页面,然后选择 Download MDK-Core (下载 MDK-Core)

  2. 输入并提交信息以注册到 Keil。

  3. 右键单击 MDK 可执行文件并将 Keil MDK 安装程序保存到您的计算机。

  4. 打开 Keil MDK 安装程序并按照步骤完成操作。请务必安装 MediaTek 设备包(MT76x7 系列)。

建立串行连接

使用 USB 线缆将主板连接到主机。Windows 设备管理器中显示的 COM 端口。要进行调试,您可以使用终端实用工具(如 HyperTerminal 或)打开与端口的会话 TeraTerm。

在云上监控 MQTT 消息

在运行 FreeRTOS 演示项目之前,您可以在 AWS IoT 控制台中设置 MQTT 客户端来监控您的设备发送到 AWS 云的消息。

使用 AWS IoT MQTT 客户端订阅 MQTT 主题
  1. 登录 AWS IoT 控制台

  2. 在导航窗格中选择测试,然后选择 MQTT 测试客户端,以便打开 MQTT 客户端。

  3. Subscription topic (订阅主题)中,输入 your-thing-nameexample/topic,然后选择 Subscribe to topic (订阅主题)

当演示项目在您的设备上成功运行时,您会多次看到“Hello World!” 发送到您订阅的主题。

使用 Keil MDK 构建并运行 FreeRTOS 演示项目

在 Keil Vision 中构建 FreeRTOS 演示项目
  1. 开始菜单,打开 Keil μVision 5。

  2. 打开 projects/mediatek/mt7697hx-dev-kit/uvision/aws_demos/aws_demos.uvprojx 项目文件。

  3. 从菜单中,选择 Project (项目),然后选择 Build target (生成目标)

    生成代码之后,您可以看到位于 projects/mediatek/mt7697hx-dev-kit/uvision/aws_demos/out/Objects/aws_demo.axf 的演示可执行文件。

运行 FreeRTOS 演示项目
  1. 将 MediaTek mt7697HX 开发套件设置为编程模式。

    要将工具包设置为 PROGRAM 模式,请按住 PROG 按钮。按住 PROG 按钮的同时,按下并释放 RESET 按钮,然后释放 PROG 按钮。

  2. 从菜单中,选择 Flash (闪存),然后选择 Configure Flash Tools (配置闪存工具)

  3. Options for Target 'aws_demo' (目标“aws_demo”的选项) 中,选择 Debug (调试) 选项卡。选择 Use (使用),将调试器设置为 CMSIS-DAP Debugger (CMSIS-DAP 调试器),然后选择 OK (确定)

  4. 从菜单中,选择 Flash (闪存),然后选择 Download (下载)

    μVision 在下载完成后通知您。

  5. 使用终端实用程序打开串行控制台窗口。将串行端口设置为 115200 bps、无奇偶校验、8 位和 1 个停止位。

  6. 在 MediaTek mt7697HX 开发套件上选择 “重置” 按钮。

排查问题

在 Keil μVision 中调试 FreeRTOS 项目

目前,必须先编辑 Keil μVision 中包含的 MediaTek 软件包,然后才能使用 Keil μVision 调试 FreeRTOS 演示项目。 MediaTek

编辑 MediaTek 软件包以调试 FreeRTOS 项目
  1. 查找并打开位于您 Keil MDK 安装程序文件夹中的 Keil_v5\ARM\PACK\.Web\MediaTek.MTx.pdsc 文件。

  2. 将出现的所有 flag = Read32(0x20000000); 替换为 flag = Read32(0x0010FBFC);

  3. 将出现的所有 Write32(0x20000000, 0x76877697); 替换为 Write32(0x0010FBFC, 0x76877697);

开始调试项目
  1. 从菜单中,选择 Flash (闪存),然后选择 Configure Flash Tools (配置闪存工具)

  2. 选择 Target (目标) 选项卡,然后选择 Read/Write Memory Areas (读/写内存区域)。确认 IRAM1 和 IRAM2 均已选中。

  3. 选择 Debug (调试) 选项卡,然后选择 CMSIS-DAP Debugger (调试器)

  4. 打开 vendors/mediatek/boards/mt7697hx-dev-kit/aws_demos/application_code/main.c,并将宏 MTK_DEBUGGER 设置为 1

  5. 在 μVision 中重新构建演示项目。

  6. 将 MediaTek mt7697HX 开发套件设置为编程模式。

    要将工具包设置为 PROGRAM 模式,请按住 PROG 按钮。按住 PROG 按钮的同时,按下并释放 RESET 按钮,然后释放 PROG 按钮。

  7. 从菜单中,选择 Flash (闪存),然后选择 Download (下载)

    μVision 在下载完成后通知您。

  8. 按下 MediaTek mt7697HX 开发套件上的重置按钮。

  9. 从 μVision 菜单,选择调试,然后选择启动/停止调试会话。在您启动调试会话时将打开 Call Stack + Locals (调用堆栈 + 本地) 窗口。

  10. 从菜单中,选择 Debug (调试),然后选择 Stop (停止) 以暂停代码执行。程序计数器在以下行停止:

    { volatile int wait_ice = 1 ; while ( wait_ice ) ; }
  11. Call Stack + Locals (调用堆栈 + 局部变量) 窗口上,将 wait_ice 的值更改为 0

  12. 在项目源代码中设置断点,然后运行代码。

解决 IDE 调试器设置的问题

如果您在调试应用程序时遇到问题,则调试器设置可能不正确。

验证您的调试器设置是否正确
  1. 打开 Keil μVision。

  2. 右键单击 aws_demos 项目,选择选项,然后在实用工具选项卡下,选择--使用调试驱动程序--旁边的设置

  3. 验证 Debug (调试) 选项卡下的设置是否如下所示:

  4. 验证 Flash Download (闪存下载) 选项卡下的设置是否如下所示:

有关 FreeRTOS 入门的常规故障排除信息,请参阅问题排查入门