

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 al kit Cypress CY8CKIT-064S0S2-4343W
<a name="getting_started_cypress_psoc64"></a>

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

Questo tutorial fornisce istruzioni per iniziare a usare il kit. [CY8CKIT-064S0S2-4343W](https://www.cypress.com/CY8CKIT-064S0S2-4343W) Se non ne hai già uno, puoi utilizzare quel link per acquistare un kit. Puoi anche utilizzare quel link per accedere alla guida per l'utente del kit. 

## Nozioni di base
<a name="getting_started_cypress_psoc64_first"></a>

Prima di iniziare, devi configurare AWS IoT FreerTOS per connettere il tuo dispositivo al Cloud. AWS Per istruzioni, consulta [Fase iniziale](freertos-prereqs.md). Dopo aver completato i prerequisiti, avrai un pacchetto FreerTOS con le credenziali. AWS IoT Core 

**Nota**  
In questo tutorial, viene indicato il percorso della directory di download di FreerTOS creata nella sezione «Primi passi». `{{freertos}}`

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

FreerTOS funziona con un flusso di build CMake o Make. Puoi usarlo ModusToolbox per il tuo flusso di compilazione Make. È possibile utilizzare l'IDE Eclipse fornito con ModusToolbox o un IDE partner come IAR EW-Arm, Arm MDK o Microsoft Visual Studio Code. L'IDE Eclipse è compatibile con i sistemi operativi Windows, macOS e Linux. 

[Prima di iniziare, scarica e installa il software più recenteModusToolbox .](https://www.cypress.com/products/modustoolbox-software-environment) Per ulteriori informazioni, consulta la [Guida all'ModusToolbox installazione](https://www.cypress.com/ModusToolboxInstallGuide).

### Strumenti di aggiornamento per la ModusToolbox versione 2.1 o precedente
<a name="getting_started_cypress_psoc64_modus_toolbox_updates"></a>

Se stai usando l'IDE ModusToolbox 2.1 Eclipse per programmare questo kit, dovrai aggiornare Firmware-loader OpenOCD e gli strumenti. 

Nei passaggi seguenti, per impostazione predefinita, il `{{ModusToolbox}}` percorso per:
+ Windows è`C:\Users\{{user_name}}\ModusToolbox`.
+ Linux è `{{user_home}}/ModusToolbox` o dove scegli di estrarre il file di archivio.
+ macOS si trova nella cartella Applicazioni del volume selezionato nella procedura guidata.

#### Aggiornamento di OpenOCD
<a name="getting_started_cypress_psoc64_openocd_update"></a>

Questo kit richiede Cypress OpenOCD 4.0.0 o successivo per cancellare e programmare correttamente il chip.

**Per aggiornare Cypress OpenOCD**

1. Vai alla pagina di rilascio di [Cypress OpenOCD](https://github.com/Infineon/openocd/releases).

1. Scarica il file di archivio per il tuo sistema operativo (). Windows/Mac/Linux

1. Elimina i file esistenti in`{{ModusToolbox}}/tools_2.x/openocd`.

1. Sostituisci i file `{{ModusToolbox}}/tools_2.x/openocd` con il contenuto estratto dell'archivio scaricato in un passaggio precedente.

#### Aggiornamento Firmware-loader
<a name="getting_started_cypress_psoc64_firmware_loader_update"></a>

Questo kit richiede Cypress Firmware-loader 3.0.0 o versione successiva.

**Per aggiornare Cypress Firmware-loader**

1. Vai alla pagina di [ Firmware-loader rilascio di Cypress](https://github.com/cypresssemiconductorco/Firmware-loader/releases).

1. Scarica il file di archivio per il tuo sistema operativo (Windows/Mac/Linux).

1. Elimina i file esistenti in`{{ModusToolbox}}/tools_2.x/fw-loader`.

1. Sostituisci i file `{{ModusToolbox}}/tools_2.x/fw-loader` con il contenuto estratto dell'archivio scaricato in un passaggio precedente.

In alternativa, puoi usare CMake per generare file di build del progetto dal codice sorgente dell'applicazione FreerTOS, creare il progetto utilizzando il tuo strumento di compilazione preferito e quindi programmare il kit utilizzando OpenOCD. [Se preferisci utilizzare uno strumento GUI per la programmazione con il flusso CMake, scarica e installa Cypress Programmer dalla pagina web di Cypress Programming Solutions.](https://www.cypress.com/products/psoc-programming-solutions) Per ulteriori informazioni, consulta [Usare CMake con FreerTOS](getting-started-cmake.md).

## Configurazione dell'hardware
<a name="getting_started_cypress_psoc64_hardware"></a>

Segui questi passaggi per configurare l'hardware del kit.

1. 

**Esegui il provisioning del kit**  
Segui le istruzioni della [Guida alla fornitura del CY8CKIT-064S0S2-4343W kit per](https://community.cypress.com/docs/DOC-20043) fornire il kit in modo sicuro. AWS IoT

   Questo kit richiede la CySecureTools versione 3.1.0 o successiva.

1. **Configura una connessione seriale**

   1. Connect il kit al computer host.

   1. La porta seriale USB del kit viene automaticamente enumerata sul computer host. Identifica il numero di porta. In Windows, è possibile identificarlo utilizzando il **Device Manager** in **Porte** (COM e LPT).

   1. Avviare un terminale seriale e aprire una connessione con le impostazioni seguenti:
      + Velocità in baud: 115200
      + Dati: 8 bit
      + Parità: nessuna
      + Bit di stop: 1
      + Controllo di flusso: nessuno

## Crea ed esegui il progetto FreerTOS Demo
<a name="getting_started_cypress_psoc64_build_run"></a>

In questa sezione crei ed esegui la demo.

1. Assicurati di seguire i passaggi indicati nella [Provisioning Guide for CY8CKIT-064S0S2-4343W Kit](https://community.cypress.com/docs/DOC-20043).

1. **Crea la demo di FreerTOS.**

   1. Apri l'IDE di Eclipse ModusToolbox e scegli, o crea, uno spazio di lavoro.

   1. Dal menu **File** scegliere **Import (Importa)**.

      **Espandi **Generale**, scegli **Progetto esistente in area di lavoro**, quindi scegli Avanti.**

   1. In **Root Directory**, immettete `{{freertos}}/projects/cypress/CY8CKIT-064S0S2-4343W/mtb/aws_demos` e selezionate il nome `aws_demos` del progetto. Dovrebbe essere selezionato per impostazione predefinita.

   1. Scegliete **Fine** per importare il progetto nel vostro spazio di lavoro.

   1. Create l'applicazione effettuando una delle seguenti operazioni:
      + Dal **pannello rapido**, seleziona **Crea applicazione aws\_demos**.
      + **Scegli **Project e scegli Build All**.**

      Assicurati che il progetto venga compilato senza errori.

1. 

**Monitoraggio dei messaggi MQTT nel cloud**  
Prima di eseguire la demo, puoi configurare il client MQTT nella AWS IoT console per monitorare i messaggi che il tuo dispositivo invia al AWS Cloud. Per iscriverti all'argomento MQTT con il client AWS IoT MQTT, segui questi passaggi.

   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. Per l'**argomento Abbonamento**, immettete**{{your-thing-name}}/example/topic**, quindi scegliete **Sottoscrivi all'**argomento.

1. **Esegui il progetto demo FreerTOS**

   1. Seleziona il progetto `aws_demos` nell'area di lavoro.

   1. Dal **pannello rapido**, seleziona **aws\_demos** Program (3). KitProg Questo programma la scheda e l'applicazione demo inizia a funzionare al termine della programmazione.

   1. È possibile visualizzare lo stato dell'applicazione in esecuzione nel terminale seriale. La figura seguente mostra una parte dell'uscita del terminale.  
![Schermata dell'output del terminale dopo la creazione del aws_demo progetto.](http://docs.aws.amazon.com/it_it/freertos/latest/userguide/images/gsg-psoc64-terminal-output.png)

      La demo MQTT pubblica messaggi su quattro argomenti diversi (`iotdemo/topic/{{n}}`dove da n=1 a 4) e sottoscrive tutti questi argomenti per ricevere gli stessi messaggi. Quando viene ricevuto un messaggio, la demo pubblica un messaggio di conferma sull'argomento. `iotdemo/acknowledgements` L'elenco seguente descrive i messaggi di debug che appaiono nell'output del terminale, con riferimenti ai numeri di serie dei messaggi. Nell'output, i dettagli del driver WICED Host Driver (WHD) vengono stampati per primi senza numerazione seriale. 

      1. Da 1 a 4: il dispositivo si connette all'Access Point (AP) configurato e viene fornito connettendosi al AWS server utilizzando l'endpoint e i certificati configurati.

      1. Da 5 a 13: la libreria CoreMQTT viene inizializzata e il dispositivo stabilisce una connessione MQTT.

      1. Da 14 a 17 — Il dispositivo si iscrive a tutti gli argomenti per ricevere di nuovo i messaggi pubblicati.

      1. Da 18 a 30: il dispositivo pubblica due messaggi e attende di riceverli. Quando ogni messaggio viene ricevuto, il dispositivo invia un messaggio di conferma.

      Lo stesso ciclo di pubblicazione, ricezione e conferma continua fino alla pubblicazione di tutti i messaggi. Vengono pubblicati due messaggi per ciclo fino al completamento del numero di cicli configurati.

1. 

**Usare CMake con FreerTOS**  
Puoi anche usare CMake per creare ed eseguire l'applicazione demo. Per configurare CMake e un sistema di build nativo, vedi. [Prerequisiti](getting-started-cmake.md#building-cmake-prereqs)

   1. Usa il seguente comando per generare file di build. Specificate la scheda di destinazione con l'`-DBOARD`opzione. 

      ```
      cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S {{freertos}} -B {{build_dir}}
      ```

      Se utilizzi Windows, devi specificare il sistema di build nativo utilizzando l'`-G`opzione perché CMake utilizza Visual Studio per impostazione predefinita.   
**Example**  

      ```
      cmake -DVENDOR=cypress -DBOARD=CY8CKIT_064S0S2_4343W -DCOMPILER=arm-gcc -S {{freertos}} -B {{build_dir}} -G Ninja
      ```

      Se `arm-none-eabi-gcc` non è incluso nel percorso della shell, è inoltre necessario impostare la variabile CMake `AFR_TOOLCHAIN_PATH`.   
**Example**  

      ```
       -DAFR_TOOLCHAIN_PATH=/home/user/opt/gcc-arm-none-eabi/bin
      ```

   1. Usa il seguente comando per creare il progetto usando CMake.

      ```
      cmake --build {{build_dir}}
      ```

   1. Infine, programma i `cm4.hex` file `cm0.hex` and generati `{{build_dir}}` da Cypress Programmer.

### Esecuzione di altre demo
<a name="getting_started_cypress_psoc64_demos"></a>

Le seguenti applicazioni demo sono state testate e verificate per funzionare con la versione corrente. Puoi trovare queste demo nella `{{freertos}}/demos` directory. Per informazioni su come eseguire queste demo, consulta. [Demo FreerTOS](freertos-next-steps.md)
+ Dimostrazione Bluetooth Low Energy
+ Over-the-Air Demo di aggiornamenti
+ Dimostrazione del client Secure Sockets Echo
+ AWS IoT Demo di Device Shadow

## Debug
<a name="getting_started_cypress_psoc64_debugging"></a>

I KitProg 3 del kit supportano il debug tramite il protocollo SWD.
+ **Per eseguire il debug dell'applicazione FreerTOS, seleziona **il progetto aws\_demos nell'area di lavoro, quindi **seleziona** aws\_demos Debug** (3) dal pannello rapido. KitProg**

## Aggiornamenti OTA
<a name="getting_started_cypress_psoc64_ota_updates"></a>

Gli MCU PSoC 64 hanno superato tutti i test di qualificazione FreerTOS richiesti. Tuttavia, la funzionalità opzionale over-the-air (OTA) implementata nella libreria firmware PSoC 64 Standard Secure è ancora in attesa di valutazione. AWS [La funzionalità OTA così come implementata attualmente supera tutti i test di qualificazione OTA ad eccezione di aws\_ota\_test\_case\_rollback\_if\_unable\_to\_connect\_after\_update.py.](https://github.com/aws/amazon-freertos/blob/202012.00/tools/ota_e2e_tests/aws_ota_test/aws_ota_test_case_rollback_if_unable_to_connect_after_update.py) 

Quando un'immagine OTA convalidata con successo viene applicata a un dispositivo che utilizza PSOc64 Standard Secure — AWS MCU e con il dispositivo non è in grado di comunicare AWS IoT Core, il dispositivo non può tornare automaticamente all'immagine originale valida nota. Ciò potrebbe rendere il dispositivo irraggiungibile per ulteriori aggiornamenti. AWS IoT Core Questa funzionalità è ancora in fase di sviluppo da parte del team di Cypress.

Per ulteriori informazioni, consulta [OTA Updates with AWS and the CY8CKIT-064S0S2-4343W Kit](https://community.cypress.com/docs/DOC-20063). Se hai altre domande o hai bisogno di supporto tecnico, contatta la [Cypress Developer Community](https://community.cypress.com).