Difference between revisions of "Arduino Tools VS Code start"
From Aino Wiki
(Created page with "=Visual Studio Code= VS Code corredato da opportuna estensione, è una delle valide alternative che si prestano a sostituire l'IDE di Sviluppo di Arduino fondamentalmente per...") |
|||
| Line 1: | Line 1: | ||
| − | |||
VS Code corredato da opportuna estensione, è una delle valide alternative che si prestano a sostituire l'IDE di Sviluppo di Arduino fondamentalmente per i seguenti motivi: | VS Code corredato da opportuna estensione, è una delle valide alternative che si prestano a sostituire l'IDE di Sviluppo di Arduino fondamentalmente per i seguenti motivi: | ||
* Gestione separata delle librerie da integrare negli sketch; | * Gestione separata delle librerie da integrare negli sketch; | ||
* Disponibilità dell'intellisense direttamente nell'ide; | * Disponibilità dell'intellisense direttamente nell'ide; | ||
* Possbilità di usufruire dell'IA Copilot per lo sviluppo e aiuto alla programmazione. | * Possbilità di usufruire dell'IA Copilot per lo sviluppo e aiuto alla programmazione. | ||
| − | + | =Estensione - PlatformIO= | |
Video di Paolo Aliverti [https://www.youtube.com/watch?v=KYyBNcJRmac qui]<br /> | Video di Paolo Aliverti [https://www.youtube.com/watch?v=KYyBNcJRmac qui]<br /> | ||
Presupponendo sia già installato Visual Studio code e le seguenti estensioni; | Presupponendo sia già installato Visual Studio code e le seguenti estensioni; | ||
| Line 15: | Line 14: | ||
Si installeranno diverse componenti ed al termine chiederà di far ripartire VS Code e dopodiché si avrà una nuova icona di un alieno sulla colonna sinistra dell'IDE VS Code. | Si installeranno diverse componenti ed al termine chiederà di far ripartire VS Code e dopodiché si avrà una nuova icona di un alieno sulla colonna sinistra dell'IDE VS Code. | ||
| − | + | ==Configurazione== | |
* Converrà che tutti i progetti siano collocati in una cartella dedicata. | * Converrà che tutti i progetti siano collocati in una cartella dedicata. | ||
* NOTARE che gli skatch non avranno più più *.ino ma come un applicativo C++, ovvero . | * NOTARE che gli skatch non avranno più più *.ino ma come un applicativo C++, ovvero . | ||
| − | + | ===Creazione nuovo progetto=== | |
[[File:Arduino_VSCode_PlatformIO_05.jpg|none]] | [[File:Arduino_VSCode_PlatformIO_05.jpg|none]] | ||
Scegliendo di inserire tutti i progetti così creati in una cartella, es VS_Code: | Scegliendo di inserire tutti i progetti così creati in una cartella, es VS_Code: | ||
| Line 58: | Line 57: | ||
Notare che l'uso del Serial Monitor è garantito dalla finestra in basso "Terminal" o, per chi ha installato l'estensione per VS Code "Serial Monitor" disporrà anche della finestra dedicata. | Notare che l'uso del Serial Monitor è garantito dalla finestra in basso "Terminal" o, per chi ha installato l'estensione per VS Code "Serial Monitor" disporrà anche della finestra dedicata. | ||
| − | + | ====Serial Monitor==== | |
Quindi supponendo di aver installato l'estensione Serial Monitor, disponendo del seguente codice: | Quindi supponendo di aver installato l'estensione Serial Monitor, disponendo del seguente codice: | ||
<syntaxhighlight lang="csharp"> | <syntaxhighlight lang="csharp"> | ||
| Line 86: | Line 85: | ||
[[File:Arduino_VSCode_PlatformIO_10_SerialMonitor_02.jpg|none]] | [[File:Arduino_VSCode_PlatformIO_10_SerialMonitor_02.jpg|none]] | ||
| − | + | ===Gestire Librerie=== | |
A differenza di Arduino IDE qui le librerie sono segregate nel progetto aperto. Il seguente schema dalla documentazione di PlatformIO spiega l'organizzazione di esempio di due libreria incluse in un progetto tipo: | A differenza di Arduino IDE qui le librerie sono segregate nel progetto aperto. Il seguente schema dalla documentazione di PlatformIO spiega l'organizzazione di esempio di due libreria incluse in un progetto tipo: | ||
[[File:Arduino_VSCode_PlatformIO_11_Librerie_01.jpg|none]] | [[File:Arduino_VSCode_PlatformIO_11_Librerie_01.jpg|none]] | ||
| Line 117: | Line 116: | ||
<syntaxhighlight lang="csharp"> | <syntaxhighlight lang="csharp"> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | + | ====Avanzate==== | |
'''PlatformIO''' ha le ''risorse'' principali di Arduino installate qui:<br /> | '''PlatformIO''' ha le ''risorse'' principali di Arduino installate qui:<br /> | ||
<code>C:\Users\utenteCorrente\.platformio\packages\framework-arduinorenesas-uno</code><br /> | <code>C:\Users\utenteCorrente\.platformio\packages\framework-arduinorenesas-uno</code><br /> | ||
Latest revision as of 23:04, 3 December 2025
VS Code corredato da opportuna estensione, è una delle valide alternative che si prestano a sostituire l'IDE di Sviluppo di Arduino fondamentalmente per i seguenti motivi:
- Gestione separata delle librerie da integrare negli sketch;
- Disponibilità dell'intellisense direttamente nell'ide;
- Possbilità di usufruire dell'IA Copilot per lo sviluppo e aiuto alla programmazione.
Contents
Estensione - PlatformIO
Video di Paolo Aliverti qui
Presupponendo sia già installato Visual Studio code e le seguenti estensioni;
- dedicata a C++ "ms-vscode.cpptools*"
- Per usare il Serial Monitor:
- Ecco PlatformIO:
Si installeranno diverse componenti ed al termine chiederà di far ripartire VS Code e dopodiché si avrà una nuova icona di un alieno sulla colonna sinistra dell'IDE VS Code.
Configurazione
- Converrà che tutti i progetti siano collocati in una cartella dedicata.
- NOTARE che gli skatch non avranno più più *.ino ma come un applicativo C++, ovvero .
Creazione nuovo progetto
Scegliendo di inserire tutti i progetti così creati in una cartella, es VS_Code:
La predisposizione sarà come segue:
NOTA:
- la prima volta impiega un po' di tempo perché scarica l'ambiente di sviluppo, compilatore.
- le impostazioni quali ad esempio la scheda Arduino da utilizzare per il progetto, sono nel file "platformIO.ini"
Il codice si trova nella cartella src, notare che non si ha più il file principale con estensione *.ino ma abbiamo main.cpp che avrà la stessa funzione.
Il file main.cpp avrà definito in chiaro il riferimento al file di header/libreria Arduino.h che nell'IDE di Arduino era un default non visualizzato, l'inclusione avviene con la direttiva #include.
Segue il codice di default, noteremo con piacere l'intellisense su ogni funzione.
#include <Arduino.h> // put function declarations here: int myFunction(int, int); void setup() { // put your setup code here, to run once: int result = myFunction(2, 3); } void loop() { // put your main code here, to run repeatedly: } // put function definitions here: int myFunction(int x, int y) { return x + y; }
Compilazione\Build
Upload su pispositivo
ATTENZIONE, la prima volta installa automaticamente delle librerie e fa altre cose di setup.
Notare che l'uso del Serial Monitor è garantito dalla finestra in basso "Terminal" o, per chi ha installato l'estensione per VS Code "Serial Monitor" disporrà anche della finestra dedicata.
Serial Monitor
Quindi supponendo di aver installato l'estensione Serial Monitor, disponendo del seguente codice:
#include <Arduino.h> int counter = 0; void setup() { Serial.begin(9600); pinMode(13, OUTPUT); } void loop() { Serial.print("Counter: "); Serial.println(counter); digitalWrite(13, HIGH); delay(500); digitalWrite(13, LOW); delay(500); counter++; }
Dopo aver uplodato lo sketch, cliccare sul pannello "Serial Monitor", cliccare su "Start Monitoring":
Quindi l'output come consueto sarà visibile:
Gestire Librerie
A differenza di Arduino IDE qui le librerie sono segregate nel progetto aperto. Il seguente schema dalla documentazione di PlatformIO spiega l'organizzazione di esempio di due libreria incluse in un progetto tipo:
Ogni progetto sarà legato alle sue librerie e non si corre il rischio di avere improvvisamente un aggiornamento che non fa funzionare più i vecchi progetti, è un sistema più razionele.
Tenere in conto che poi il codice si potrà conservare con Git ed avere sempre una fotografia dello stato del codice sorgente coerente.
La pagina che si apre ha persino un codice di esempio per dare una idea della libreria che si fa ad installare, selezionarla e cliccare su "Add to project":
Si può ancora scegliere a quale progetto aggiungerla, nella DDL c'è l'elenco di opzioni già compilate basate sulla storia delle attività.
Si apre di default sul file platformIO.ini perché questo ha la configurazione delle librerie necessarie per il progetto.
; PlatformIO Project Configuration File ; ; Build options: build flags, source filter ; Upload options: custom upload port, speed and extra flags ; Library options: dependencies, extra library storages ; Advanced options: extra scripting ; ; Please visit documentation for the other options and examples ; https://docs.platformio.org/page/projectconf.html [env:uno_r4_wifi] platform = renesas-ra board = uno_r4_wifi framework = arduino lib_deps = marcoschwartz/LiquidCrystal_I2C@^1.1.4
Avanzate
PlatformIO ha le risorse principali di Arduino installate qui:
C:\Users\utenteCorrente\.platformio\packages\framework-arduinorenesas-uno
Molti degli #include principali sono nella seguente cartella:
C:\Users\utenteCorrente\.platformio\packages\framework-arduinorenesas-uno\cores\arduino
Le librerie principali sono lella seguente sottocartella:
C:\Users\utenteCorrente\.platformio\packages\framework-arduinorenesas-uno\libraries
Alcuni esempi fondamentatli son qui:
C:\Users\utenteCorrente\.platformio\platforms\renesas-ra\examples
Mappa e Link
Arduino Tools di sviluppo | Arduino indice
Arduino | Arduino C++
Domotica | Dizionario di Elettronica
Parole chiave:












