Microchip ATECC608A 安全元件以及 Windows 模拟器入门 - FreeRTOS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Microchip ATECC608A 安全元件以及 Windows 模拟器入门

重要

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

本教程提供了有关 Microchip ATECC608A 安全元件和 Windows 模拟器入门的说明。

您需要以下硬件:

在开始之前,必须进行配置Amazon IoT并下载 FreeRTOS 才能将设备连接到Amazon云端。有关说明,请参阅初始步骤:在本教程中,FreeRTOS 下载目录的路径被称为 freertos

概览

本教程包含以下步骤:

  1. 将主板连接到主机。

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

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

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

设置 Microchip ATECC608A 硬件

您必须先对 SAMD21 进行编程,然后才能与 Microchip ATECC608A 设备进行交互。

设置 SAMD21 XPlained Pro 主板
  1. 按照 CryptoAuthSSH-XSTK (DM320109)-最新固件链接下载包含指令 (PDF) 和可编程到 D21 的二进制文件的 .zip 文件。

  2. 下载并安装 Amtel Studio 7 IDP。请确保在安装过程中选择 SMART ARM MCU 驱动程序架构。

  3. 使用 USB 2.0 Micro B 电缆将“调试 USB”连接器连接到您的计算机,并按照 PDF 中的说明操作。(“调试 USB”连接器是最接近电源引线和引脚的 USB 端口。)

连接硬件
  1. 从调试 USB 中拔下微型 USB 电缆。

  2. 在 EXT1 位置,将 mikroBUS XPlained Pro 适配器插入 SAMD21 主板。

  3. 将 ATECC608A Secure 4 Click 主板插入 mikroBUSX XPlained Pro 适配器。确保 Click 主板的缺口角与适配器板上的缺口图标匹配。

  4. 将微型 USB 电缆插入到目标 USB 中。

您的设置应如下所示。

设置开发环境

  1. 如果您尚不了解,请创建一个Amazon帐户。要将 IAM 用户添加到您的Amazon账户,请参阅 IAM 用户指南

    要授予您的 IAM 用户账户访问Amazon IoT和 FreeRTOS 的权限,您需要在以下步骤中将以下 IAM 策略附加到您的 IAM 用户账户:

    • AmazonFreeRTOSFullAccess

    • AWSIoTFullAccess

  2. 将该AmazonFreeRTOSFullAccess策略附加到 IAM 用户。

    1. 浏览到 I AM 控制台,然后从导航窗格中选择用户

    2. 在搜索文本框中输入您的用户名,然后从列表中选择该名称。

    3. 选择 Add permissions(添加权限)。

    4. 选择 Attach existing policies directly(直接附上现有策略)。

    5. 在搜索框中,输入 AmazonFreeRTOSFullAccess,从列表中选择,然后选择下一步: 审核

    6. 选择 Add permissions(添加权限)。

  3. 将该AWSIoTFullAccess策略附加到 IAM 用户。

    1. 浏览到 I AM 控制台,然后从导航窗格中选择用户

    2. 在搜索文本框中输入您的用户名,然后从列表中选择该名称。

    3. 选择 Add permissions(添加权限)。

    4. 选择 Attach existing policies directly(直接附上现有策略)。

    5. 在搜索框中,输入 AWSIoTFullAccess,从列表中选择,然后选择下一步: 审核

    6. 选择 Add permissions(添加权限)。

    有关 IAM 的更多信息,请参阅 IAM 用户指南中的 IAM 权限和策略。

  4. 从 FreeRTOS 存储库下载 FreeRTOS GitHub 存储库

    要从以下地址下载 FreeRTOS GitHub:

    1. 浏览到 FreeRTOS GitHub 存储库

    2. 选择 Clone or download (克隆或下载)

    3. 从计算机的命令行中,将存储库克隆到主机上的一个目录中。

      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 pullgit submodule update --init --recursive)时,都要使用升级为管理员的控制台。git clone

    4. freertos 目录中,检查要使用的分支。

  5. 设置开发环境。

    1. 安装最新版的 WinPCap

    2. 安装 Microsoft Visual Studio。

      Visual Studio 2017 和 2019 版已知可用。支持 Visual Studio 的所有版本(社区版、专业版或企业版)。

      在 IDE 之外,请安装 Desktop development with C++ (C++ 桌面开发)组件。然后,在 Optional (可选) 下安装最新的 Windows 10 开发工具包。

    3. 确保您有活动的有线以太网连接。

生成并运行 FreeRTOS 演示项目

重要

Microchip ATECC608A 设备具有一次性初始化功能,该功能在首次运行项目时(在调用 C_InitToken 期间)被锁定到设备上。但是,FreeRTOS 演示项目和测试项目具有不同的配置。如果设备在演示项目配置期间被锁定,则测试项目中的所有测试都不可能成功。

使用 Visual Studio IDE 生成和运行 FreeRTOS 演示项目
  1. 在 Visual Studio 中加载项目。

    File (文件) 菜单上,选择 Open (打开)。选择 File/Solution (文件/解决方案),导航到 freertos\projects\microchip\ecc608a_plus_winsim\visual_studio\aws_demos\aws_demos.sln 文件,然后选择 Open (打开)

  2. 重新定位演示项目。

    此演示项目取决于 Windows 开发工具包,但未指定 Windows 开发工具包版本。默认情况下,IDE 可能会尝试使用计算机上不存在的开发工具包版本构建演示。要设置 Windows 开发工具包版本,请右键单击 aws_demos,然后选择 Retarget Projects (重新定位项目)。这将打开 Review Solution Actions (审核解决方案操作) 窗口。选择计算机上现有的一个 Windows 开发工具包版本(使用下拉列表中的初始值),然后选择 OK (确定)

  3. 构建并运行项目。

    从 “生成” 菜单中选择 “生成解决方案”,并确保构建的解决方案没有错误。选择 Debug (调试)、Start Debugging (开始调试) 以运行项目。在第一次运行时,您需要配置您的设备接口并重新编译。有关更多信息,请参阅 配置网络接口

  4. 预置 Microchip ATECC608A。

    Microchip 提供了多种脚本工具来帮助设置 ATECC608A 部件。导航到 freertos\vendors\microchip\secure_elements\app\example_trust_chain_tool,然后打开 README.md 文件。

    请按照 README.md 文件中的说明预置您的设备。相应步骤包括:

    1. 创建证书颁发机构并将其注册到 Amazon。

    2. 在 Microchip ATECC608A 上生成您的密钥,并导出公有密钥和设备序列号。

    3. 为设备生成证书并将该证书注册到 Amazon。

    4. 将 CA 证书和设备证书加载到设备上。

  5. 生成并运行 FreeRTOS 示例。

    再次重新运行演示项目。这次应该能成功连接!

问题排查

有关一般故障排除信息,请参阅问题排查入门