AWS IoT
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

使用 AWS IoT 嵌入式 C 软件开发工具包

设置适用于 AWS IoT 嵌入式 C 软件开发工具包的运行时环境

  1. 从以下 GitHub 存储库下载适用于 C 的 AWS IoT 设备开发工具包:

    git clone https://github.com/aws/aws-iot-device-sdk-embedded-C.git -b release

  2. 您必须先从 GitHub 下载所有必需的第三方库,然后才能使用 AWS IoT 嵌入式 C 开发工具包。您可以在 deviceSDK/external_libs 文件夹中找到执行该操作的说明。

示例应用程序配置

AWS IoT 嵌入式 C 软件开发工具包包括示例应用程序以供您试用。为简便起见,我们将运行 subscribe_publish_sample。

  1. 将您的证书、私有密钥和根 CA 证书复制到 deviceSDK/certs 目录。

    如果您未得到根 CA 证书的副本,您可以在此处下载。从浏览器复制根 CA 文本,将其粘贴到文件中,然后将其复制到 deviceSDK/certs 目录中。

    注意

    设备和根 CA 证书可能会过期或被吊销。如果出现这种情况,您必须将新的 CA 证书或私有密钥和设备证书复制到您的设备上。

  2. 导航到 deviceSDK/sample_apps/subscribe_publish_sample 目录。您必须配置个人终端节点、私有密钥和证书。私有终端节点是您之前记下的 REST API 终端节点。如果忘记了终端节点,并且您有权访问安装有 AWS CLI 的设备,您可以使用 aws iot describe-endpoint 命令查找您的私有终端节点 URL。转至 AWS IoT 控制台。选择 Registry,选择 Things,然后选择代表 Raspberry Pi 的事物。在事物的 Details 页面上,在左侧导航窗格中,选择 Interact。复制所有内容,包括 REST API 终端节点中的“.com”。

  3. 打开 aws_iot_config.h 文件并在 //Get from console 部分更新以下各项的值:

    AWS_IOT_MQTT_HOST

    您的私有终端节点。

    AWS_IOT_MY_THING_NAME

    您的事物名称。

    AWS_IOT_ROOT_CA_FILENAME

    您的根 CA 证书。

    AWS_IOT_CERTIFICATE_FILENAME

    您的证书。

    AWS_IOT_PRIVATE_KEY_FILENAME

    您的私有密钥。

    例如:

    // Get from console // ================================================= #define AWS_IOT_MQTT_HOST "a22j5sm6o3yzc5.iot.us-east-1.amazonaws.com" #define AWS_IOT_MQTT_PORT 8883 #define AWS_IOT_MQTT_CLIENT_ID "MyRaspberryPi" #define AWS_IOT_MY_THING_NAME "MyRaspberryPi" #define AWS_IOT_ROOT_CA_FILENAME "root-CA.crt" #define AWS_IOT_CERTIFICATE_FILENAME "4bbdc778b9-certificate.pem.crt" #define AWS_IOT_PRIVATE_KEY_FILENAME "4bbdc778b9-private.pem.key" // =================================================

运行示例应用程序

  1. 使用包含的生成文件编译 subscribe_publish_sample_app

    make -f Makefile

    此操作将生成可执行的文件。

  2. 现在运行 subscribe_publish_sample_app。您应该可以看到类似于如下所示的输出内容:

您的 Raspberry Pi 现已通过适用于 C 的 AWS IoT 设备软件开发工具包连接到 AWS IoT。