

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Tutorial: Usar a AWS IoT Device SDK para C incorporado
<a name="iot-embedded-c-sdk"></a>

Esta seção descreve como executar o AWS IoT Device SDK para C incorporado.

**Topics**
+ [Etapa 1: instalar a AWS IoT Device SDK para C incorporado](#install-embedded-c-sdk)
+ [Etapa 2: configurar uma aplicação de amostra](#iot-c-sdk-app-config)
+ [Etapa 3: criar e executar a aplicação de exemplo](#iot-c-sdk-app-run)

## Etapa 1: instalar a AWS IoT Device SDK para C incorporado
<a name="install-embedded-c-sdk"></a>

Em geral, o AWS IoT Device SDK para C incorporado destina-se a dispositivos com restrição de recursos que exigem um runtime de linguagem C otimizado. É possível usar o SDK em qualquer sistema operacional e hospedá-lo em qualquer tipo de processador (p. ex., MCUs e MPUs). Se você tiver mais memória e recursos de processamento disponíveis, recomendamos usar um dos SDKs de dispositivos e dispositivos móveis do AWS IoT de ordem superior (por exemplo, C\$1\$1, Java, JavaScript e Python).

Em geral, o AWS IoT Device SDK para C incorporado destina-se a sistemas que usam MCUs ou MPUs low-end que executam sistemas operacionais incorporados. Para o exemplo de programação nesta seção, presumimos que o dispositivo usa Linux.

**Example**  

1. Faça o download de AWS IoT Device SDK para C incorporado para o dispositivo no [GitHub](https://github.com/aws/aws-iot-device-sdk-embedded-C).

   ```
   git clone https://github.com/aws/aws-iot-device-sdk-embedded-c.git --recurse-submodules
   ```

   Isso cria um diretório chamado `aws-iot-device-sdk-embedded-c` no diretório atual.

1. Navegue até esse diretório e confira a versão mais recente. Consulte [github.com/aws/aws-iot-device-sdk-embedded-C/tags](https://github.com/aws/aws-iot-device-sdk-embedded-C/tags) para ver a tag de lançamento mais recente.

   ```
   cd aws-iot-device-sdk-embedded-c
   git checkout latest-release-tag
   ```

1. Instale o OpenSSL versão 1.1.0 ou posterior. As bibliotecas de desenvolvimento do OpenSSL geralmente são chamadas de “libssl-dev” ou “openssl-devel” quando instaladas por meio de um gerenciador de pacotes.

   ```
   sudo apt-get install libssl-dev
   ```

## Etapa 2: configurar uma aplicação de amostra
<a name="iot-c-sdk-app-config"></a>

O AWS IoT Device SDK para C incorporado inclui aplicativos de exemplo para você experimentar. Para simplificar, este tutorial usa a aplicação `mqtt_demo_mutual_auth`, que ilustra como se conectar ao agente de mensagens do AWS IoT Core e assinar e publicar em tópicos MQTT.

1. Copie o certificado e a chave privada que você criou em [Introdução aos AWS IoT Core tutoriais](iot-gs.md) no diretório `build/bin/certificates`.
**nota**  
Os certificados CA raiz e de dispositivo estão sujeitos a expiração ou revogação. Se esses certificados expirarem ou forem revogados, você deverá copiar um novo certificado da CA ou uma chave privada e um certificado do dispositivo no dispositivo.

1. É necessário configurar o exemplo com sua chave privada, certificado, certificado CA raiz e endpoint pessoal do AWS IoT Core. Navegue até o diretório `aws-iot-device-sdk-embedded-c/demos/mqtt/mqtt_demo_mutual_auth`.

   Se você tiver a AWS CLI instalada, será possível usar o comando para localizar o URL do endpoint da sua conta.

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

   Se você não tiver a AWS CLI instalada, abra o [console do AWS IoT](https://console.aws.amazon.com/iot/home). No painel de navegação, escolha **Gerenciar** e **Objetos**. Escolha o objeto de IoT para o dispositivo e escolha **Interagir**. Seu endpoint é exibido na seção **HTTPS** da página de detalhes do objeto.

1. Abra o arquivo `demo_config.h` e atualize os valores para o seguinte:  
AWS\$1IOT\$1ENDPOINT  
Seu endpoint pessoal.  
CLIENT\$1CERT\$1PATH  
O caminho do arquivo de certificado, por exemplo `certificates/device.pem.crt"`.  
CLIENT\$1PRIVATE\$1KEY\$1PATH  
O nome do arquivo de chave privada, por exemplo `certificates/private.pem.key`.

   Por exemplo:

   ```
   // Get from demo_config.h
   // =================================================
   #define AWS_IOT_ENDPOINT               "my-endpoint-ats.iot.us-east-1.amazonaws.com"
   #define AWS_MQTT_PORT                  8883
   #define CLIENT_IDENTIFIER              "testclient"
   #define ROOT_CA_CERT_PATH              "certificates/AmazonRootCA1.crt"
   #define CLIENT_CERT_PATH               "certificates/my-device-cert.pem.crt"
   #define CLIENT_PRIVATE_KEY_PATH        "certificates/my-device-private-key.pem.key"
   // =================================================
   ```

1. Verifique se você tem a CMake instalada no dispositivo usando este comando.

   ```
   cmake --version
   ```

   Se vir as informações de versão para o compilador, você poderá continuar para a próxima seção.

   Se receber um erro ou não vir nenhuma informação, você deverá instalar o pacote cmake usando este comando.

   ```
   sudo apt-get install cmake
   ```

   Execute o comando **cmake --version** novamente e confirme se a CMake foi instalada e que você está pronto para continuar.

1. Verifique se você tem as ferramentas de desenvolvimento instaladas em seu dispositivo usando este comando.

   ```
   gcc --version
   ```

   Se vir as informações de versão para o compilador, você poderá continuar para a próxima seção.

   Se receber um erro ou não vir nenhuma informação do compilador, você deverá instalar o pacote `build-essential` usando este comando.

   ```
   sudo apt-get install build-essential
   ```

   Execute o comando **gcc --version** novamente e confirme se as ferramentas de compilação foram instaladas e que você está pronto para continuar.

## Etapa 3: criar e executar a aplicação de exemplo
<a name="iot-c-sdk-app-run"></a>

Este procedimento explica como gerar a aplicação `mqtt_demo_mutual_auth` em seu dispositivo e conectá-la ao [console de AWS IoT](https://console.aws.amazon.com/iot/home) usando o AWS IoT Device SDK para C incorporado.

**Como executar os aplicativos de exemplo do AWS IoT Device SDK para C incorporado**

1. Navegue até `aws-iot-device-sdk-embedded-c` e crie um diretório de compilação.

   ```
   mkdir build && cd build
   ```

1. Insira o comando CMake a seguir para gerar os arquivos de Makefiles necessários para compilação.

   ```
   cmake ..  
   ```

1. Digite o comando a seguir para compilar o arquivo de aplicação executável.

   ```
   make
   ```

1. Execute o aplicativo `mqtt_demo_mutual_auth` com este comando.

   ```
   cd bin
   ./mqtt_demo_mutual_auth
   ```

   Você deve ver uma saída semelhante a:   
![\[Saída de linha de comando para executar a aplicação de amostra AWS IoT Device SDK para C incorporado.\]](http://docs.aws.amazon.com/pt_br/iot/latest/developerguide/images/successful-run2.png)

O dispositivo está conectado à AWS IoT agora usando o AWS IoT Device SDK para C incorporado.

Também é possível usar o console da AWS IoT para visualizar as mensagens MQTT que a aplicação de exemplo está publicando. Para obter informações sobre como usar o cliente MQTT no [console do AWS IoT](https://console.aws.amazon.com/iot/home), consulte [Exibir mensagens MQTT com o cliente AWS IoT MQTT](view-mqtt-messages.md).