本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Microchip ATECC608A 安全元件以及 Windows 模拟器入门
此参考集成托管在 Amazon-FreeRTOS 存储库中,该存储库已过时。建议您在创建新项目时从此处开始。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的现有 FreeRTOS 项目,请参阅亚马逊 FreeRTOS Github 存储库迁移指南。
本教程提供了有关 Microchip ATECC608A 安全元件和 Windows 模拟器入门的说明。
您需要以下硬件:
在开始之前,必须进行配置Amazon IoT并下载 FreeRTOS 才能将设备连接到Amazon云端。有关说明,请参阅初始步骤:在本教程中,FreeRTOS 下载目录的路径被称为 freertos
。
概览
本教程包含以下步骤:
-
将主板连接到主机。
-
在主机上安装软件来开发和调试微控制器主板的嵌入式应用程序。
-
将 FreeRTOS 演示应用程序交叉编译为二进制图像。
-
将应用程序二进制映像加载到您的主板中,然后运行该应用程序。
设置 Microchip ATECC608A 硬件
您必须先对 SAMD21 进行编程,然后才能与 Microchip ATECC608A 设备进行交互。
设置 SAMD21 XPlained Pro 主板
-
按照 CryptoAuthSSH-XSTK (DM320109)-最新固件
链接下载包含指令 (PDF) 和可编程到 D21 的二进制文件的 .zip 文件。 -
下载并安装 Amtel Studio 7
IDP。请确保在安装过程中选择 SMART ARM MCU 驱动程序架构。 -
使用 USB 2.0 Micro B 电缆将“调试 USB”连接器连接到您的计算机,并按照 PDF 中的说明操作。(“调试 USB”连接器是最接近电源引线和引脚的 USB 端口。)
连接硬件
-
从调试 USB 中拔下微型 USB 电缆。
-
在 EXT1 位置,将 mikroBUS XPlained Pro 适配器插入 SAMD21 主板。
-
将 ATECC608A Secure 4 Click 主板插入 mikroBUSX XPlained Pro 适配器。确保 Click 主板的缺口角与适配器板上的缺口图标匹配。
-
将微型 USB 电缆插入到目标 USB 中。
您的设置应如下所示。

设置开发环境
-
如果您尚不了解,请创建一个Amazon帐户
。要将 IAM 用户添加到您的Amazon账户,请参阅 IAM 用户指南。 要授予您的 IAM 用户账户访问Amazon IoT和 FreeRTOS 的权限,您需要在以下步骤中将以下 IAM 策略附加到您的 IAM 用户账户:
-
AmazonFreeRTOSFullAccess
-
AWSIoTFullAccess
-
-
将该
AmazonFreeRTOSFullAccess
策略附加到 IAM 用户。-
浏览到 I AM 控制台
,然后从导航窗格中选择用户。 -
在搜索文本框中输入您的用户名,然后从列表中选择该名称。
-
选择 Add permissions(添加权限)。
-
选择 Attach existing policies directly(直接附上现有策略)。
-
在搜索框中,输入
AmazonFreeRTOSFullAccess
,从列表中选择,然后选择下一步: 审核。 -
选择 Add permissions(添加权限)。
-
-
将该
AWSIoTFullAccess
策略附加到 IAM 用户。-
浏览到 I AM 控制台
,然后从导航窗格中选择用户。 -
在搜索文本框中输入您的用户名,然后从列表中选择该名称。
-
选择 Add permissions(添加权限)。
-
选择 Attach existing policies directly(直接附上现有策略)。
-
在搜索框中,输入
AWSIoTFullAccess
,从列表中选择,然后选择下一步: 审核。 -
选择 Add permissions(添加权限)。
有关 IAM 的更多信息,请参阅 IAM 用户指南中的 IAM 权限和策略。
-
-
从 FreeRTOS 存储库下载 FreeRTOS GitHub 存储库
。 要从以下地址下载 FreeRTOS GitHub:
-
浏览到 FreeRTOS GitHub 存储库
。 -
选择 Clone or download (克隆或下载)。
-
从计算机的命令行中,将存储库克隆到主机上的一个目录中。
git clone https://github.com/aws/amazon-freertos.git --recurse-submodules
重要 -
在本主题中,FreeRTOS 下载目录的路径被称为
。freertos
-
路径中的空格字符可能会导致构建失败。克隆或复制存储库时,请确保您创建的路径不包含空格字符。freertos
-
Microsoft Windows 上的文件路径最大长度为 260 个字符。FreeRTOS 下载目录路径过长可能会导致构建失败。
-
由于源代码可能包含符号链接,因此如果您使用 Windows 提取存档,则可能必须:
-
启用开发者模式
或 -
使用被提升为管理员的控制台。
这样,Windows 可以在提取存档时正确创建符号链接。否则,符号链接将被写成普通文件,其中包含符号链接的路径为文本或为空。有关更多信息,请参阅 Windows 10 中的博客文章 Symlinks!
。 如果你在 Windows 下使用 Git,则必须启用开发者模式,或者必须:
-
使用以下
core.symlinks
命令设置为 true:git config --global core.symlinks true
-
每当你使用写入系统的 git 命令(例如、、git pull和git submodule update --init --recursive)时,都要使用升级为管理员的控制台。git clone
-
-
-
从
目录中,检查要使用的分支。freertos
-
-
设置开发环境。
-
安装最新版的 WinPCap
。 -
安装 Microsoft Visual Studio。
Visual Studio 2017 和 2019 版已知可用。支持 Visual Studio 的所有版本(社区版、专业版或企业版)。
在 IDE 之外,请安装 Desktop development with C++ (C++ 桌面开发)组件。然后,在 Optional (可选) 下安装最新的 Windows 10 开发工具包。
-
确保您有活动的有线以太网连接。
-
生成并运行 FreeRTOS 演示项目
Microchip ATECC608A 设备具有一次性初始化功能,该功能在首次运行项目时(在调用 C_InitToken
期间)被锁定到设备上。但是,FreeRTOS 演示项目和测试项目具有不同的配置。如果设备在演示项目配置期间被锁定,则测试项目中的所有测试都不可能成功。
使用 Visual Studio IDE 生成和运行 FreeRTOS 演示项目
-
在 Visual Studio 中加载项目。
从 File (文件) 菜单上,选择 Open (打开)。选择 File/Solution (文件/解决方案),导航到
文件,然后选择 Open (打开)。freertos
\projects\microchip\ecc608a_plus_winsim\visual_studio\aws_demos\aws_demos.sln -
重新定位演示项目。
此演示项目取决于 Windows 开发工具包,但未指定 Windows 开发工具包版本。默认情况下,IDE 可能会尝试使用计算机上不存在的开发工具包版本构建演示。要设置 Windows 开发工具包版本,请右键单击 aws_demos,然后选择 Retarget Projects (重新定位项目)。这将打开 Review Solution Actions (审核解决方案操作) 窗口。选择计算机上现有的一个 Windows 开发工具包版本(使用下拉列表中的初始值),然后选择 OK (确定)。
-
构建并运行项目。
从 “生成” 菜单中选择 “生成解决方案”,并确保构建的解决方案没有错误。选择 Debug (调试)、Start Debugging (开始调试) 以运行项目。在第一次运行时,您需要配置您的设备接口并重新编译。有关更多信息,请参阅 配置网络接口。
-
预置 Microchip ATECC608A。
Microchip 提供了多种脚本工具来帮助设置 ATECC608A 部件。导航到
,然后打开 README.md 文件。freertos
\vendors\microchip\secure_elements\app\example_trust_chain_tool请按照
README.md
文件中的说明预置您的设备。相应步骤包括:-
创建证书颁发机构并将其注册到 Amazon。
-
在 Microchip ATECC608A 上生成您的密钥,并导出公有密钥和设备序列号。
-
为设备生成证书并将该证书注册到 Amazon。
-
将 CA 证书和设备证书加载到设备上。
-
-
生成并运行 FreeRTOS 示例。
再次重新运行演示项目。这次应该能成功连接!
问题排查
有关一般故障排除信息,请参阅问题排查入门。