

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Guida introduttiva all'Infineon OPTIGA Trust X e al kit di connettività XMC4800 IoT
<a name="getting_started_infineon_trust_x"></a>

**Importante**  <a name="deprecation-message"></a>
Questa integrazione di riferimento è ospitata nel repository Amazon-FreeRTOS che è obsoleto. Ti consigliamo di [iniziare da qui quando crei un nuovo progetto](freertos-getting-started-modular.md). Se disponi già di un progetto FreeRTOS esistente basato sull'ormai obsoleto repository Amazon-FreerTOS, consulta il. [Guida alla migrazione del repository Github di Amazon-FreeRTOS](github-repo-migration.md)

Questo tutorial fornisce istruzioni per iniziare a utilizzare il kit di connettività XMC4800 IoT e OPTIGA Trust X Secure Element di Infineon. Rispetto al tutorial [Guida introduttiva al kit di connettività IoT Infineon XMC48 00](getting_started_infineon.md), questa guida illustra come fornire credenziali sicure utilizzando Infineon OPTIGA Trust X Secure Element.

È necessario il seguente hardware:

1. [Host MCU - Infineon XMC4800 IoT Connectivity Kit, visita il AWS Partner Device Catalog per acquistarne uno dal nostro partner.](https://devices.amazonaws.com/detail/a3G0L00000AANsbUAH/XMC4800-IoT-Amazon-FreeRTOS-Connectivity-Kit-WiFi)

1. Pacchetto di estensione di sicurezza: 
   + Elemento di sicurezza - Infineon OPTIGA Trust X.

     [Visita il AWS Partner Device Catalog per acquistarli dal nostro partner.](https://devices.amazonaws.com/detail/a3G0h000000TePnEAK/OPTIGA%E2%84%A2-Trust-X-Security-Solution)
   + Scheda di personalizzazione - Scheda di personalizzazione Infineon OPTIGA.
   + Scheda adattatore - Infineon MyIo T Adapter.

Per seguire le fasi necessarie, è necessario aprire una connessione seriale con la scheda per visualizzare le informazioni di registrazione e di debug. (Uno dei passaggi richiede di copiare una chiave pubblica dall'output di debug seriale della scheda e incollarla in un file.) Per fare ciò, è necessario un convertitore USB/seriale da 3,3 V oltre all'IoT XMC4800 Connectivity Kit. È noto che il [ JBtek convertitore USB/seriale EL-PN-47310126 funziona bene](https://www.amazon.com/gp/product/B00QT7LQ88) per questa demo. Sono inoltre necessari tre [cavi di male-to-male collegamento (per](https://www.amazon.com/gp/product/B077N6HFCX/) ricezione (RX), trasmissione (TX) e terra (GND)) per collegare il cavo seriale alla scheda adattatore Infineon T. MyIo 

Prima di iniziare, devi configurare AWS IoT e scaricare FreerTOS per connettere il tuo dispositivo al Cloud. AWS Per istruzioni, consulta [Opzione 2: Generazione di chiavi private integrate](dev-mode-key-provisioning.md#dev-mode-key-provisioning-option2). In questo tutorial, il percorso della directory di download di FreerTOS è indicato come. `freertos`

## Panoramica di
<a name="getting_started_infineon_trust_x_overview"></a>

Questa esercitazione contiene i seguenti passaggi:

1. Installazione del software sul computer host per lo sviluppo e il debug di applicazioni integrate per la scheda con microcontrollore.

1. Compila in modo incrociato un'applicazione demo FreerTOS su un'immagine binaria.

1. Caricamento dell'immagine binaria dell'applicazione sulla scheda in uso e successiva esecuzione dell'applicazione.

1. Interazione con l'applicazione in esecuzione sulla scheda attraverso una connessione seriale, per scopi di monitoraggio e debug.

## Configurazione dell'ambiente di sviluppo
<a name="infineon_trust_x_setup_env"></a>

FreerTOS utilizza l'ambiente di sviluppo DAVE di Infineon per programmare il. XMC4800 Prima di iniziare, devi scaricare e installare DAVE e alcuni driver J-Link per comunicare con il debugger della scheda.

### Installa DAVE
<a name="infineon_trust_x_install_dave"></a>

1. Andare alla pagina di [download del software Infineon DAVE](https://infineoncommunity.com/dave-download_ID645).

1. Scegliere il pacchetto DAVE per il proprio sistema operativo e inviare le informazioni di registrazione. Dopo la registrazione con Infineon, verrà inviata un'e-mail di conferma con un link per scaricare un file .zip.

1. Scaricare il file .zip del pacchetto DAVE (`DAVE_version_os_date.zip`) e decomprimerlo sul percorso in cui si desidera installare DAVE (ad esempio, `C:\DAVE4`).
**Nota**  
Alcuni utenti di Windows hanno riportato problemi con Windows Explorer per decomprimere il file. È consigliabile utilizzare un programma di terze parti, ad esempio 7-Zip.

1. Per avviare DAVE, eseguire il file eseguibile che si trova nella cartella decompressa `DAVE_version_os_date.zip`.

Per ulteriori informazioni, consulta la [Guida rapida su DAVE](https://www.infineon.com/dgdl/Infineon-DAVE_Quick_Start-GS-v02_00-EN.pdf?fileId=5546d4624cb7f111014d059f7b8c712d). 

### Installa i driver Segger J-Link
<a name="infineon_trust_x_install_jlink"></a>

Per comunicare con la sonda di debug integrata del kit di connettività XMC4800 IoT, sono necessari i driver inclusi nel pacchetto software e documentazione J-Link. È possibile scaricare il pacchetto J-Link Software and Documentation dalla pagina di [download del software J-Link](https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack) di Segger.

## Stabilire una connessione seriale
<a name="infineon_trust_x_install_serial_connection"></a>

Connect il cavo del USB/Serial convertitore all'adattatore Infineon Shield2Go. Questa operazione consente alla scheda di inviare le informazioni di accesso e di debug in un modulo che è possibile visualizzare sul computer di sviluppo. Per stabilire una connessione seriale:

1. Connect il pin RX al pin TX del USB/Serial convertitore.

1. Connect il pin TX al pin RX del USB/Serial convertitore.

1. Collegare il pin di messa a terra del convertitore seriale a uno dei pin "GND" sulla scheda. I dispositivi devono condividere un terreno comune.

L'alimentazione è fornita dalla porta di debug USB, perciò non collegare il connettore di tensione positiva dell'adattatore seriale alla scheda.

**Nota**  
Alcuni cavi seriali utilizzano un livello di segnale da 5V. La XMC4800 scheda e il modulo Wi-Fi Click richiedono una tensione di 3,3 V. Non utilizzare il cavo di collegamento IOREF della scheda per modificare i segnali della scheda su 5V.

 Con il cavo collegato, è possibile aprire una connessione seriale su un emulatore di terminale, ad esempio [GNU Screen](https://www.gnu.org/software/screen/). Il baud rate è impostato su 115200 per impostazione predefinita con 8 bit di dati, nessuna parità, 1 bit di arresto. 

## Monitoraggio dei messaggi MQTT in cloud
<a name="infineon_trust_x_monitoring"></a>

Prima di eseguire il progetto demo FreerTOS, puoi configurare il client MQTT nella console per monitorare AWS IoT i messaggi che il tuo dispositivo invia al Cloud. AWS 

**Per iscriversi all'argomento MQTT con il client MQTT AWS IoT**

1. Accedi alla [console AWS IoT](https://console.aws.amazon.com/iotv2/).

1. Nel pannello di navigazione, scegli **Test**, quindi scegli **MQTT test client per aprire il client** MQTT.

1. In **Argomento sottoscrizione**, digitare ***your-thing-name*/example/topic**, quindi scegliere **Effettua sottoscrizione all'argomento**.

Quando il progetto demo viene eseguito correttamente sul tuo dispositivo, vedi «Hello World\$1» inviato più volte all'argomento a cui ti sei iscritto.

## Crea ed esegui il progetto demo FreerTOS
<a name="infineon_trust_x_build_and_run_example"></a>

### Importa la demo di FreerTOS in DAVE
<a name="infineon_trust_x_freertos_import-project"></a><a name="infineon_trust_x_load_project"></a>

1. Avvia DAVE.

1. In DAVE scegliere **File**, quindi **Import (Importa)**. Espandere la cartella **Infineon**, scegliere **DAVE Project (Progetto DAVE)**, quindi scegliere **Next (Successivo)**.

1. Nella finestra **Importa progetti DAVE**, scegli **Seleziona la directory principale**, scegli **Sfoglia**, quindi scegli il progetto demo. XMC4800 

   Nella directory in cui hai decompresso il download di FreerTOS, si trova il progetto demo. `projects/infineon/xmc4800_plus_optiga_trust_x/dave4/aws_demos/dave4`

   Assicurarsi che l'opzione **Copy Projects Into Workspace (Copia progetti nel workspace)** sia deselezionata.

1. Scegli **Fine**.

   Il progetto `aws_demos` deve essere importato nel workspace e attivato.

1. Dal menu **Project (Progetto)**, scegliere **Build Active Project (Crea progetto attivo)**.

   Assicurarsi che il progetto venga creato senza errori.

### Esegui il progetto demo FreerTOS
<a name="infineon_trust_x_run_examples"></a>

1. Dal menu **Project (Progetto)** scegliere **Rebuild Active Project (Ricrea progetto attivo)** per ricreare `aws_demos` e accertarsi che le modifiche di configurazione siano selezionate.

1. Da **Project Explorer**, fare clic con il pulsante destro del mouse su `aws_demos`, scegliere **Debug As (Debug come)**, e quindi scegliere **DAVE C/C\$1\$1 Application**.

1. Fare doppio clic su **GDB SEGGER J-Link Debugging (Debug di GDB SEGGER J-)** per creare una conferma del debug. Scegliere **Debug**.

1. Quando il debugger si arresta sul punto di interruzione in `main()`, dal menu **Run (Esegui)**, scegliere **Resume (Riprendi)**.

A questo punto, continuare con la fase di estrazione della chiave pubblica in [Opzione 2: Generazione di chiavi private integrate](dev-mode-key-provisioning.md#dev-mode-key-provisioning-option2). Dopo aver completato tutti i passaggi, vai alla AWS IoT console. Il client MQTT configurato in precedenza dovrebbe visualizzare i messaggi MQTT inviati dal dispositivo. Tramite la connessione seriale del dispositivo, si dovrebbe vedere qualcosa di simile sull'output UART:

```
0 0 [Tmr Svc] Starting key provisioning...
1 1 [Tmr Svc] Write root certificate...
2 4 [Tmr Svc] Write device private key...
3 82 [Tmr Svc] Write device certificate...
4 86 [Tmr Svc] Key provisioning done...
5 291 [Tmr Svc] Wi-Fi module initialized. Connecting to AP...
.6 8046 [Tmr Svc] Wi-Fi Connected to AP. Creating tasks which use network...
7 8058 [Tmr Svc] IP Address acquired [IP Address]
8 8058 [Tmr Svc] Creating MQTT Echo Task...
9 8059 [MQTTEcho] MQTT echo attempting to connect to [MQTT Broker].
...10 23010 [MQTTEcho] MQTT echo connected.
11 23010 [MQTTEcho] MQTT echo test echoing task created.
.12 26011 [MQTTEcho] MQTT Echo demo subscribed to iotdemo/#
13 29012 [MQTTEcho] Echo successfully published 'Hello World 0'
.14 32096 [Echoing] Message returned with ACK: 'Hello World 0 ACK'
.15 37013 [MQTTEcho] Echo successfully published 'Hello World 1'
16 40080 [Echoing] Message returned with ACK: 'Hello World 1 ACK'
.17 45014 [MQTTEcho] Echo successfully published 'Hello World 2'
.18 48091 [Echoing] Message returned with ACK: 'Hello World 2 ACK'
.19 53015 [MQTTEcho] Echo successfully published 'Hello World 3'
.20 56087 [Echoing] Message returned with ACK: 'Hello World 3 ACK'
.21 61016 [MQTTEcho] Echo successfully published 'Hello World 4'
22 64083 [Echoing] Message returned with ACK: 'Hello World 4 ACK'
.23 69017 [MQTTEcho] Echo successfully published 'Hello World 5'
.24 72091 [Echoing] Message returned with ACK: 'Hello World 5 ACK'
.25 77018 [MQTTEcho] Echo successfully published 'Hello World 6'
26 80085 [Echoing] Message returned with ACK: 'Hello World 6 ACK'
.27 85019 [MQTTEcho] Echo successfully published 'Hello World 7'
.28 88086 [Echoing] Message returned with ACK: 'Hello World 7 ACK'
.29 93020 [MQTTEcho] Echo successfully published 'Hello World 8'
.30 96088 [Echoing] Message returned with ACK: 'Hello World 8 ACK'
.31 101021 [MQTTEcho] Echo successfully published 'Hello World 9'
32 104102 [Echoing] Message returned with ACK: 'Hello World 9 ACK'
.33 109022 [MQTTEcho] Echo successfully published 'Hello World 10'
.34 112047 [Echoing] Message returned with ACK: 'Hello World 10 ACK'
.35 117023 [MQTTEcho] Echo successfully published 'Hello World 11'
36 120089 [Echoing] Message returned with ACK: 'Hello World 11 ACK'
.37 122068 [MQTTEcho] MQTT echo demo finished.
38 122068 [MQTTEcho] ----Demo finished----
```

#### Crea la demo di FreerTOS con CMake
<a name="infineon_trust_x_cmake"></a>

Questa sezione descrive l'utilizzo CMake su Windows con MingW come sistema di build nativo. Per ulteriori informazioni sull'utilizzo CMake con altri sistemi operativi e opzioni, vedere[Utilizzo CMake con FreerTOS](getting-started-cmake.md). ([MinGW ](https://sourceforge.net/projects/mingw-w64/files/) è un ambiente di sviluppo minimalista per applicazioni Microsoft Windows native).

Se preferisci non utilizzare un IDE per lo sviluppo di FreerTOS, puoi CMake utilizzarlo per creare ed eseguire le applicazioni demo o le applicazioni che hai sviluppato utilizzando editor di codice e strumenti di debug di terze parti.

**Per creare la demo di FreerTOS con CMake**

1. Configurare la suite di strumenti GNU ARM Embedded Toolchain.

   1. Scaricare una versione per Windows della toolchain dalla [pagina di download di ARM Embedded Toolchain](https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads). 
**Nota**  
È consigliabile scaricare una versione diversa da "8-2018-q4-major", a causa di un [bug rilevato](https://bugs.launchpad.net/gcc-arm-embedded/+bug/1810274) mediante l'utilità "objcopy" in tale versione.

   1. Aprire il programma di installazione toolchain scaricato e seguire le istruzioni nella procedura guidata.

   1. Nella pagina finale della procedura guidata di installazione, selezionare **Add path to environment variable (Aggiungi percorso a variabili di ambiente)** per aggiungere il percorso della toolchain alla variabile di ambiente del percorso di sistema.

1. Installa CMake e MinGW.

   Per istruzioni, consulta [CMake Prerequisiti](getting-started-cmake.md#building-cmake-prereqs).

1. Crea una cartella per contenere i file di build generati (*build-folder*). 

1. Cambia le directory nella tua directory di download di FreerTOS `freertos` () e usa il seguente comando per generare i file di build:

   ```
   cmake -DVENDOR=infineon -DBOARD=xmc4800_plus_optiga_trust_x -DCOMPILER=arm-gcc -S . -B build-folder -G "MinGW Makefiles" -DAFR_ENABLE_TESTS=0
   ```

1. Cambia le directory nella directory build (*build-folder*) e usa il seguente comando per creare il file binario:

   ```
   cmake --build . --parallel 8
   ```

   Questo comando crea il file binario di output `aws_demos.hex` nella directory di compilazione.

1. Effettuare il flashing ed eseguire l'immagine con [JLINK](getting_started_infineon.md#install-jlink).

   1. Dalla directory build (*build-folder*), utilizzate i seguenti comandi per creare uno script flash:

      ```
      echo loadfile aws_demos.hex > flash.jlink
      echo r >> flash.jlink
      echo g >> flash.jlink
      echo q >> flash.jlink
      ```

   1. Effettuare il flashing dell'immagine utilizzando l'eseguibile JLNIK.

      ```
      JLINK_PATH\JLink.exe  -device XMC4800-2048 -if SWD -speed auto -CommanderScript flash.jlink
      ```

      I log dell'applicazione devono essere visibili mediante [la connessione seriale](getting_started_infineon.md#install-serial-connection) stabilita con la scheda. Continuare al passaggio di estrazione della chiave pubblica in [Opzione 2: Generazione di chiavi private integrate](dev-mode-key-provisioning.md#dev-mode-key-provisioning-option2). Dopo aver completato tutti i passaggi, vai alla AWS IoT console. Il client MQTT configurato in precedenza dovrebbe visualizzare i messaggi MQTT inviati dal dispositivo. 

### Risoluzione dei problemi
<a name="infineon_trust_x_troubleshooting"></a>

Per informazioni generiche sulla risoluzione dei problemi, consultare [Nozioni di base sulla risoluzione dei problemi](gsg-troubleshooting.md).