初始步骤 - FreeRTOS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

初始步骤

重要

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

要开始使用 FreeRTOS,你必须拥有 Amazon 一个帐户、一个有权访问权限的用户 Amazon IoT 和 FreeR Amazon IoT TOS 云服务。您还必须下载 FreeRTOS 并配置开发板的 FreeRTOS 演示项目才能使用。 Amazon IoT以下各节将引导您了解这些要求。

注意

设置您的 Amazon 账户和权限

注册获取 Amazon Web Services 账户

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

报名参加 Amazon Web Services 账户
  1. 打开 https://portal.aws.amazon.com/billing/signup

  2. 按照屏幕上的说明进行操作。

    在注册时,将接到一通电话,要求使用电话键盘输入一个验证码。

    当您注册时 Amazon Web Services 账户,就会创建Amazon Web Services 账户根用户一个。根用户有权访问该账户中的所有 Amazon Web Services 和资源。作为安全最佳实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务

Amazon 注册过程完成后会向您发送一封确认电子邮件。在任何时候,您都可以通过转至 https://aws.amazon.com/ 并选择我的账户来查看当前的账户活动并管理您的账户。

保护 IAM 用户

注册后 Amazon Web Services 账户,开启多重身份验证 (MFA),保护您的管理用户。有关说明,请参阅 IAM 用户指南中的 为 IAM 用户启用虚拟 MFA 设备(控制台)

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

有关创建和保护 IAM 用户的更多信息,请参阅《IAM 用户指南》中的以下主题:

要提供访问权限,请为您的用户、组或角色添加权限:

注册您的 MCU 主板 Amazon IoT

您的董事会必须注册 Amazon IoT 才能与 Amazon 云端通信。要注册您的董事会 Amazon IoT,您必须:

一项 Amazon IoT 政策

该 Amazon IoT 政策授予您的设备访问 Amazon IoT 资源的权限。它存储在 Amazon 云端。

一 Amazon IoT 件事

一个 Amazon IoT 东西可以让你在中管理你的设备 Amazon IoT。它存储在 Amazon 云端。

私有密钥和 X.509 证书

私钥和证书允许您的设备进行身份验证 Amazon IoT。

要注册主板,请按照以下过程操作。

创建 Amazon IoT 策略
  1. 要创建 IAM 策略,您必须知道您的 Amazon 地区和 Amazon 账号。

    要查找您的 Amazon 账号,请打开Amazon 管理控制台,找到并展开右上角账户名称下方的菜单,然后选择我的账户。您的账户 ID 显示在 Account Settings (账户设置) 下。

    要查找您 Amazon 账户所在 Amazon 的地区,请使用 Amazon Command Line Interface。要安装 Amazon CLI,请按照《Amazon Command Line Interface 用户指南》中的说明进行操作。安装后 Amazon CLI,打开命令提示符窗口并输入以下命令:

    aws iot describe-endpoint --endpoint-type=iot:Data-ATS

    输出应该如下所示:

    { "endpointAddress": "xxxxxxxxxxxxxx-ats.iot.us-west-2.amazonaws.com" }

    在此示例中,区域为 us-west-2

    注意

    我们建议使用 ATS 端点,如示例所示。

  2. 浏览至 Amazon IoT 控制台

  3. 在导航窗格中依次选择安全策略创建

  4. 输入用于标识您的策略的名称。

  5. 添加语句部分中,选择高级模式。将以下 JSON 复制并粘贴到策略编辑器窗口中。aws-account用您的 Amazon 地区aws-region和账户 ID 替换和。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iot:Connect", "Resource":"arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Publish", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Subscribe", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" }, { "Effect": "Allow", "Action": "iot:Receive", "Resource": "arn:aws:iot:aws-region:aws-account-id:*" } ] }

    此策略授予以下权限:

    iot:Connect

    向您的设备授予使用任何客户端 ID 连接 Amazon IoT 消息代理的权限。

    iot:Publish

    授予设备在任何 MQTT 主题上发布 MQTT 消息的权限。

    iot:Subscribe

    授予设备订阅到任何 MQTT 主题筛选条件的权限。

    iot:Receive

    授予设备从 Amazon IoT 消息代理接收有关任何 MQTT 主题的消息的权限。

  6. 选择创建

为设备创建 IoT 事物、私有密钥和证书
  1. 浏览至 Amazon IoT 控制台

  2. 在导航窗格中,选择管理,然后选择事物

  3. 如果您的账户中未注册任何 IoT 事物,此时将显示您还没有任何事物页面。如果您看到此页面,请选择注册事物。否则,选择 创建

  4. 创建 Amazon IoT 事物页面上,选择创建单个事物

  5. 将设备添加到事物注册表页面上,输入您事物的名称,然后选择下一步

  6. 添加事物的证书页面上的一键式创建证书下,选择创建证书

  7. 选择各项的下载链接来下载私有密钥和证书。

  8. 选择激活来激活您的证书。必须先激活证书,然后才能使用它们 。

  9. 选择 Att ach a policy,将策略附加到您的证书,该策略允许您的设备访问 Amazon IoT 操作。

  10. 选择您刚刚创建的策略,然后选择注册事物

在您的董事会注册后 Amazon IoT,您可以继续下载 FreeRTOS

下载 FreeRTOS

你可以从 FreeRTOS 存储库中下载 FreeRTOS。 GitHub

下载 FreeRTOS 后,您可以继续配置 FreeRTOS 演示

配置 FreeRTOS 演示

您需要在 FreeRTOS 目录中编辑一些配置文件,然后才能在主板上编译和运行演示。

配置您的 Amazon IoT 终端节点

您必须向FreeRTOS提供终端节点,以便在 Amazon IoT 您的主板上运行的应用程序可以向正确的端点发送请求。

  1. 浏览至 Amazon IoT 控制台

  2. 在左侧导航窗格中,选择 设置

    您的 Amazon IoT 终端节点显示在设备数据端点中。它应该类似于 1234567890123-ats.iot.us-east-1.amazonaws.com。记下此终端节点。

  3. 在导航窗格中,选择管理,然后选择事物

    您的设备应该有一个 Amazon IoT 事物名称。记下此名称。

  4. 打开 demos/include/aws_clientcredential.h

  5. 为以下常量指定值:

    • #define clientcredentialMQTT_BROKER_ENDPOINT "Your Amazon IoT endpoint";

    • #define clientcredentialIOT_THING_NAME "The Amazon IoT thing name of your board"

配置 Wi-Fi

如果您的主板通过 Wi-Fi 连接到 Internet,则必须向 FreeRTOS 提供 Wi-Fi 凭证才能连接到网络。如果主板不支持 Wi-Fi,您可以跳过这些步骤。

  1. demos/include/aws_clientcredential.h.

  2. 为以下 #define 常量指定值:

    • #define clientcredentialWIFI_SSID "The SSID for your Wi-Fi network"

    • #define clientcredentialWIFI_PASSWORD "The password for your Wi-Fi network"

    • #define clientcredentialWIFI_SECURITY Wi-Fi 网络的安全类型

      有效安全类型为:

      • eWiFiSecurityOpen(开放,不安全)

      • eWiFiSecurityWEP(WEP 安全性)

      • eWiFiSecurityWPA(WPA 安全性)

      • eWiFiSecurityWPA2(WPA2 安全性)

格式化您的 Amazon IoT 凭证

FreeRTOS 必须 Amazon IoT 将证书和私钥与您注册的内容及其权限策略相关联,才能代表您的设备成功 Amazon IoT 与之通信。

注意

要配置您的 Amazon IoT 凭据,您必须拥有注册设备时从 Amazon IoT 控制台下载的私钥和证书。将设备注册为 Amazon IoT 事物后,您可以从 Amazon IoT 控制台检索设备证书,但无法检索私钥。

FreeRTOS 是 C 语言项目,证书和私有密钥必须经过专门格式化才能添加到项目中。

  1. 在浏览器窗口中,打开 tools/certificate_configuration/CertificateConfigurator.html

  2. Certificate PEM file (证书 PEM 文件) 下,选择您从 Amazon IoT 控制台下载的 ID-certificate.pem.crt

  3. Private Key PEM file (私有密钥 PEM 文件) 下,选择您从 Amazon IoT 控制台下载的 ID-private.pem.key

  4. 选择 Generate and save aws_clientcredential_keys.h (生成并保存 aws_clientcredential_keys.h),然后将文件保存到 demos/include 中。这将覆盖目录中的现有文件。

    注意

    仅出于演示目的对证书和私有密钥进行了硬编码。生产级应用程序应将这些文件存储在安全位置。

完成 FreeRTOS 配置后,您可以继续参阅适用于您主板的入门指南,以便设置平台的硬件及其软件开发环境,然后在主板上编译并运行演示。有关主板特定的说明,请参阅主板特定的入门指南。本入门教程中使用的演示应用程序为 coreMQTT 双向身份验证演示,位于 demos/coreMQTT/mqtt_demo_mutual_auth.c 中。