

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

# Microchip Asecur ATECC608 e Element with Windows 模拟器入门
<a name="getting_started_atecc608a"></a>

**重要**  <a name="deprecation-message"></a>
该参考集成托管在已弃用的 Amazon-FreeRTOS 存储库中。当您创建新项目时，我们建议[从此处开始](freertos-getting-started-modular.md)。如果您已经有一个基于现已弃用的 Amazon-FreeRTOS 存储库的 FreeRTOS 项目，请参阅 [Amazon-FreeRTOS Github 存储库迁移指南](github-repo-migration.md)。

本教程提供了使用 Windows 仿真器的 Microchip ATECC608 A Secure Element 入门的说明。

您需要以下硬件：
+ [Microchip ATECC608 一个安全的元素点击板](https://www.mikroe.com/secure-4-click)
+ [ SAMD21 XPlained Pro](https://www.microchipdirect.com/product/ATSAMD21-XPRO?dfw_tracker=64197-ATSAMD21-XPRO&gclid=EAIaIQobChMIn5jIuM3C5QIVk_5kCh1m1Ag4EAQYASABEgLKtfD_BwE)
+ [mikroBUS Xplained Pro 适配器](https://www.microchip.com/Developmenttools/ProductDetails/ATMBUSADAPTER-XPRO)

在开始之前，您必须进行配置 Amazon IoT 并下载 FreeRTOS 才能将您的设备连接到云端。 Amazon 有关说明，请参阅[初始步骤](freertos-prereqs.md)：在本教程中，FreeRTOS 下载目录的路径称为 *freertos*。

## 概述
<a name="gsg-atcc608a-overview"></a>

本教程包含以下步骤：

1. 将主板连接到主机。

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

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

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

## 设置 Microchip ATECC608 A 硬件
<a name="gsg-atcc608a-setup"></a>

在与 Microchip ATECC608 A 设备进行交互之前，必须先对 Microchip A 设备进行编程。 SAMD21

**设置 P SAMD21 XPlained ro 主板**

1. 点击 [CryptoAuthSSH-XSTK (DM320109)-最新固件](http://ww1.microchip.com/downloads/en/DeviceDoc/ATCRYPTOAUTHSSH-XSTK_v1.0.1.zip)链接，下载包含指令 (PDF) 和可在 D21 上编程的二进制文件的.zip 文件。

1. 下载并安装 [Atmel Studio 7](https://microchipdeveloper.com/atstudio:studio7intro) IDP。请确保在安装过程中选择 **SMART ARM MCU** 驱动程序架构。

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

**连接硬件**

1. 从调试 USB 中拔下微型 USB 电缆。

1. 将 MikroBus XPlained Pro 适配器插入主 SAMD21 板所在位置。 EXT1 

1. 将 ATECC608 A Secure 4 Click 主板插入 Mikro XPlained busX Pro 适配器。确保 Click 主板的缺口角与适配器板上的缺口图标匹配。

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

您的设置应如下所示。

![\[一个试验板，带有标有“目标 USB”的 USB 电缆，连接到标有“已连接到 EXT 1”的外部设备，板上凹槽与默认跳线位置匹配。\]](http://docs.amazonaws.cn/freertos/latest/userguide/images/samd21.png)


## 设置开发环境
<a name="gsg-atecc608a-setup-dev-env"></a>

### 注册获取 Amazon Web Services 账户
<a name="sign-up-for-aws"></a>

如果您没有 Amazon Web Services 账户，请完成以下步骤来创建一个。

**报名参加 Amazon Web Services 账户**

1. 打开[https://portal.aws.amazon.com/billing/注册。](https://portal.amazonaws.cn/billing/signup)

1. 按照屏幕上的说明操作。

   在注册时，将接到电话或收到短信，要求使用电话键盘输入一个验证码。

   当您注册时 Amazon Web Services 账户，就会创建*Amazon Web Services 账户根用户*一个。根用户有权访问该账户中的所有 Amazon Web Services 服务 和资源。作为最佳安全实践，请为用户分配管理访问权限，并且只使用根用户来执行[需要根用户访问权限的任务](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_root-user.html#root-user-tasks)。

Amazon 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 [https://aws.amazon.com/](https://www.amazonaws.cn/)并选择 “**我的账户”，查看您当前的账户活动并管理您的账户**。

### 保护 IAM 用户
<a name="secure-an-admin"></a>

注册后 Amazon Web Services 账户，开启多重身份验证 (MFA)，保护您的管理用户。有关说明，请参阅《IAM 用户指南》**中的 [为 IAM 用户启用虚拟 MFA 设备（控制台）](https://docs.amazonaws.cn/IAM/latest/UserGuide/id_credentials_mfa_enable_virtual.html#enable-virt-mfa-for-iam-user)。

要允许其他用户访问您的 Amazon Web Services 账户 资源，请创建 IAM 用户。为了保护您的 IAM 用户，请启用 MFA 并仅向 IAM 用户授予执行任务所需的权限。

有关创建和保护 IAM 用户的更多信息，请参阅《IAM 用户指南》中的以下主题：**
+ [在你的 IAM 用户中创建 Amazon Web Services 账户](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_users_create.html)
+ [适用于 Amazon 资源的访问权限管理](https://docs.amazonaws.cn/IAM/latest/UserGuide/access.html)
+ [基于 IAM 身份的策略示例](https://docs.amazonaws.cn/IAM/latest/UserGuide/access_policies_examples.html)

要提供访问权限，请为您的用户、组或角色添加权限：
+ 通过身份提供商在 IAM 中托管的用户：

  创建适用于身份联合验证的角色。按照《IAM 用户指南》**中[针对第三方身份提供商创建角色（联合身份验证）](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_roles_create_for-idp.html)的说明进行操作。
+ IAM 用户：
  + 创建您的用户可以担任的角色。按照《IAM 用户指南》**中[为 IAM 用户创建角色](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_roles_create_for-user.html)的说明进行操作。
  + （不推荐使用）将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南》**中[向用户添加权限（控制台）](https://docs.amazonaws.cn//IAM/latest/UserGuide/id_users_change-permissions.html#users_change_permissions-add-console)中的说明进行操作。

**设置**

1. [从 FreeRTOS 存储库中下载 FreeRTOS 存储库。 GitHub ](https://github.com/aws/amazon-freertos)

   要从以下网址下载 FreeRTOS： GitHub

   1. 浏览到 [FreeRTOS 存储库 GitHub ](https://github.com/aws/amazon-freertos)。

   1. 选择 **Clone or download (克隆或下载)**。

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

      ```
      git clone https://github.com/aws/amazon-freertos.git -\-recurse-submodules
      ```
**重要**  
在本主题中，FreeRTOS 下载目录的路径称为 `freertos`。
`freertos` 路径中的空格字符可能会导致构建失败。克隆或复制存储库时，请确保您创建的路径不包含空格字符。
Microsoft Windows 上的文件路径最大长度为 260 个字符。FreeRTOS 下载目录路径过长可能会导致构建操作失败。
由于源代码可能包含符号链接，因此，如果您使用 Windows 提取存档，则可能必须：  
启用[开发者模式](https://docs.microsoft.com/en-us/windows/apps/get-started/enable-your-device-for-development)，或者，
使用已提升为管理员的控制台。
这样，Windows 就可以在提取存档文件时正确创建符号链接。否则，符号链接将作为普通文件写入，该文件会将符号链接的路径作为文本，或者是空文件。有关更多信息，请参阅博客文章 [Windows 10 中的符号链接](https://blogs.windows.com/windowsdeveloper/2016/12/02/symlinks-windows-10/)。  
如果您在 Windows 下使用 Git，则必须启用开发者模式，或者必须：  
使用以下命令将 `core.symlinks` 设置为 true：  

          ```
          git config -\-global core.symlinks true
          ```
每当您使用写入系统的 git 命令（例如，**git pull**、**git clone** 和 **git submodule update -\$1-init -\$1-recursive**）时，请使用具有管理员权限的控制台。

   1. 从 `freertos` 目录中，检查要使用的分支。

1. 设置开发环境。

   1. 安装最新版本的 [Win PCap](https://www.winpcap.org)。

   1. 安装 Microsoft Visual Studio。

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

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

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

## 构建并运行 FreeRTOS 演示项目
<a name="gsg-atecc608a-build-and-run"></a>

**重要**  
Microch ATECC608 ip A 设备具有一次性初始化，该初始化会在项目首次运行时（在调用期间`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 (打开)**。

1. 重新定位演示项目。

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

1. 构建并运行项目。

   从**构建**菜单中选择**构建解决方案**，确保解决方案已构建且没有错误。选择 **Debug (调试)、Start Debugging (开始调试)** 以运行项目。在第一次运行时，您需要配置您的设备接口并重新编译。有关更多信息，请参阅 [配置网络接口](getting_started_windows.md#win-network-interface)。

1. 配置微芯片 A ATECC608

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

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

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

   1. 在 Microchip ATECC608 A 上生成密钥并导出公钥和设备序列号。

   1. 为设备生成证书并向注册该证书 Amazon。

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

1. 构建并运行 FreeRTOS 示例。

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

## 问题排查
<a name="ecc680a-troubleshooting"></a>

有关一般故障排除信息，请参阅[问题排查入门](gsg-troubleshooting.md)。