本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
赛普拉斯 CY8CKIT-064S0S2-4343W 套件入门
此参考集成托管在 Amazon-FreeRTOS 存储库中,该存储库已过时。建议您在创建新项目时从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的现有 FreeRTOS 项目,请参阅亚马逊 FreeRTOS Github 存储库迁移指南。
本教程提供了 CY8CKIT-064S0S2-4343W
开始使用
您必须先配置 FreeRTOS 以将您的设备连接到Amazon云端,Amazon IoT然后才能开始使用 FreeRTOS。有关说明,请参阅 初始步骤。满足先决条件后,您将获得包含Amazon IoT Core证书的 FreeRTOS 软件包。
在本教程中,在 “第一步” 部分创建的 FreeRTOS 下载目录的路径被称为
。freertos
设置开发环境
FreeRTOS 可以与 CMake 或 Make 构建流程配合使用。你可以用 ModusToolbox 于 Make 构建流程。你可以使用随附的 Eclipse IDE ModusToolbox 或合作伙伴 IDE,例如 IAR EW-arm、Arm MDK 或微软 Visual Studio Code。Eclipse IDE 与 Windows、macOS 和 Linux 操作系统兼容。
在开始之前,请下载并安装最新的ModusToolbox 软件
更新 ModusToolbox 2.1 或更早版本的工具
如果你使用 ModusToolbox 2.1 Eclipse IDE 来编程这个套件,你需要更新 OpenOCD 和固件加载器工具。
在以下步骤中,默认
路径为:ModusToolbox
-
Windows 是
C:\Users\
。user_name
\ModusToolbox -
Linux 是
或您选择提取存档文件的地方。user_home
/ModusToolbox -
macOS 位于您在向导中选择的卷中的 “应用程序” 文件夹下。
更新 OpenOCD
该套件需要 Cypress OpenOCD 4.0.0 或更高版本才能成功擦除和编程芯片。
更新赛普拉斯 OpenOCD
-
下载适用于你的操作系统(Windows/Mac/Linux)的存档文件。
-
删除中的现有文件
。ModusToolbox
/tools_2.x/openocd -
将中的
文件替换为您在上一步中下载的存档的提取内容。ModusToolbox
/tools_2.x/openocd
更新固件加载器
此套件需要 Cypress 固件加载器 3.0.0 或更高版本。
更新 Cypress 固件加载器
-
转到 C ypress 固件加载器发布页面
。 -
下载适用于你的操作系统(Windows/Mac/Linux)的存档文件。
-
删除中的现有文件
。ModusToolbox
/tools_2.x/fw-loader -
将中的
文件替换为您在上一步中下载的存档的提取内容。ModusToolbox
/tools_2.x/fw-loader
或者,您可以使用 CMake 从 FreeRTOS 应用程序源代码生成项目构建文件,使用首选的构建工具生成项目,然后使用 OpenOCD 对套件进行编程。如果你更喜欢使用 GUI 工具对 CMake 流程进行编程,请从 Cypress 编程解决方案网页下载并安装 Cypress Progr
设置硬件
按照以下步骤操作,设置套件的硬件。
-
配置您的套件
按照 CY8CKIT-064S0S2-4343W 套件配置指南的
说明安全地配置您的套件Amazon IoT。 此套件需要 CySecureTools 3.1.0 或更高版本。
-
设置串行连接
-
将套件Connect 您的主计算机。
-
套件的 USB 串行端口将在主机上自动枚举。确定端口号。在 Windows 中,您可以使用端口(COM 和 LPT)下的设备管理器对其进行识别。
-
启动一个串行终端,使用以下设置建立连接:
-
波特率:115200
-
数据:8 位
-
奇偶校验:无
-
停止位:1
-
流控制:无
-
-
生成并运行 FreeRTOS 演示项目
在本节中,您将构建并运行演示。
-
构建 FreeRTOS 演示版。
-
打开 Eclipse IDE, ModusToolbox 然后选择或创建工作区。
-
从 File (文件) 菜单,选择 Import (导入)。
展开 “常规”,选择 “现有项目到工作区”,然后选择 “下一步”。
-
在根目录中,输入
然后选择项目名称freertos
/projects/cypress/CY8CKIT-064S0S2-4343W/mtb/aws_demosaws_demos
。应默认选择的是默认选定。 -
选择 “完成” 将项目导入您的工作区。
-
通过执行以下操作之一构建应用程序:
-
从 “快速面板” 中,选择 “构建 aws_demos 应用程序”。
-
选择 “项目”,然后选择 “全部构建”。
确保项目编译时没有错误。
-
-
-
在云上监控 MQTT 消息
在运行演示之前,您可以在Amazon IoT控制台中设置 MQTT 客户端来监控您的设备发送到Amazon云端的消息。要通过 MQTT 客户端订阅Amazon IoT MQTT 主题,请按照以下步骤操作。
-
登录到 Amazon IoT 控制台
。 -
在导航窗格中,选择 “测试”,然后选择 MQTT 测试客户端打开 MQTT 客户端。
-
在 “订阅主题” 中
,输入,然后选择 “订阅主题”。your-thing-name
/example/topic
-
-
运行 FreeRTOS 演示项目
-
在工作区
aws_demos
中选择项目。 -
从快速面板中选择 aws_demos 程序 (KitProg3)。这会对开发板进行编程,演示应用程序在编程完成后开始运行。
-
您可以在串行终端中查看运行应用程序的状态。下图显示了终端输出的一部分。
MQTT 演示发布有关四个不同主题(
iotdemo/topic/
其中 n=1 到 4)的消息,并订阅所有这些主题以接收相同的消息。收到消息后,演示会发布有关该主题的确认消息n
iotdemo/acknowledgements
。以下列表描述了终端输出中出现的调试消息,并引用了这些消息的序列号。在输出中,首先打印不带序列号的 WICED 主机驱动程序 (WHD) 驱动程序详细信息。-
1 到 4 — 设备连接到配置的接入点 (AP),通过使用配置的端点和证书连接到Amazon服务器进行配置。
-
5 到 13 — CoreMQTT 库已初始化,设备建立 MQTT 连接。
-
14 到 17 — 设备订阅所有主题以接收回已发布的消息。
-
18 到 30 — 设备发布两条消息并等待收到回复。收到每条消息后,设备会发送一条确认消息。
相同的发布、接收和确认周期将持续到所有消息发布为止。在配置的周期数完成之前,每个周期会发布两条消息。
-
-
-
在 FreeRTOS 中使用 cMake
您也可以使用 CMake 构建和运行演示应用程序。要设置 CMake 和原生编译系统,请参阅先决条件。
-
使用以下命令生成构建文件。使用
-DBOARD
选项指定目标主板。cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S
freertos
-Bbuild_dir
如果你使用的是 Windows,则必须使用
-G
选项指定本机编译系统,因为 CMake 默认使用 Visual Studio。cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S
freertos
-Bbuild_dir
-G Ninja如果
arm-none-eabi-gcc
不在 Shell 路径中,您还需要设置AFR_TOOLCHAIN_PATH
CMake 变量。-DAFR_TOOLCHAIN_PATH=/home/user/opt/gcc-arm-none-eabi/bin
-
使用以下命令使用 CMake 生成项目。
cmake --build
build_dir
-
最后,使用 Cypress 程序员
对下生成的build_dir
cm0.hex
和cm4.hex
文件进行编程。
-
运行其他演示
以下演示应用程序已经过测试和验证,可与当前版本配合使用。你可以在
目录下找到这些演示。有关如何运行这些演示的信息,请参阅FreeRTOS reRRR。freertos
/demos
-
低功耗蓝牙演示
-
无线更新演示
-
安全套接字 Echo 客户端演示
-
Amazon IoTDeDevice Shadow
调试
套件中的 KitProg 3 支持通过 SWD 协议进行调试。
-
要调试 FreeRTOS 应用程序,请在工作区中选择 aws_demos 项目,然后从快速面板中选择 aws_demos Debug (KitProg3)。
OTA 更新
PSoC 64 微控制器已通过所有必需的 FreeRTOS 资格测试。但是,PSoC 64 标准安全Amazon固件库中实现的可选 over-the-air (OTA) 功能仍在评估中。目前实现的 OTA 功能已通过除 aws_ota_test_case_rollback_if_unable_to_connect_after_update.py
如果已成功验证的 OTA 映像应用于使用 PSoC64 Standard Secure —Amazon MCU 的设备并且该设备无法与Amazon IoT Core之通信,则该设备无法自动回滚到已知良好的原始映像。这可能会导致无法访问设备Amazon IoT Core以进行进一步的更新。赛普拉斯团队仍在开发此功能。
有关更多信息,请参阅 OTA 更新Amazon和 CY8CKIT-064S0S2-4343W 套件