La piattaforma di elaborazione hardware Arduino è diventata onnipresente all'interno della comunità di appassionati di tecnologia e anche i non esperti la stanno conoscendo perché è così semplice da usare. Tuttavia, anche i programmatori esperti possono trarre vantaggio da questa piattaforma di elaborazione fisica con codice prefabbricato, ma potrebbero essere frustrati dalla GUI eccessivamente semplicistica fornita con il software Arduino. Questo tutorial ti mostrerà come assumere il pieno controllo del tuo arduino mostrandoti come prendere il codice C++ fornito da arduino e utilizzare (o modificare) questo codice per creare i tuoi programmi C++ per le piattaforme arduino, utilizzando l'IDE C++ di Eclipse, il compilatore AVR-GCC e il tizio AVR per scaricare i tuoi programmi sull'hardware
Passi
Passaggio 1. Scarica tutto il software e i file necessari
Ciò comprende:
- Il codice sorgente di Arduino, disponibile da [1]. Opzionalmente puoi anche scaricare il pacchetto software per la tua piattaforma (Windows/Linux/OSX) che include tutti i file C++ predefiniti che fanno funzionare arduino, così come la semplice GUI Java rivolta ai non programmatori.
- AVR-GCC, che è il compilatore per la serie di microcontrollori AVR (cuore di un Arduino). Per gli utenti Windows, ottenere WinAVR [2]
- Java Runtime Environment a 32 e 64 bit sono entrambi disponibili da Oracle.
- L'IDE Eclipse per C/C++ [3], dove eseguirai la codifica e caricherai il codice sul tuo Arduino. Scarica la stessa versione (32 bit o 64 bit) della tua versione di Java
Passaggio 2. Configura l'IDE di Eclipse
Innanzitutto, installa WinAVR o AVR-GCC. Quindi, estrai l'IDE Eclipse nella sua cartella dedicata.
- Avvia Eclipse e scegli il tuo spazio di lavoro predefinito
- Vai a Guida all'installazione del nuovo software
- Inserisci "https://avr-eclipse.sourceforge.net/updatesite" (senza virgolette) nel campo "Work With" e fai clic su Aggiungi
- Seleziona il plug-in AVR Eclipse, seleziona Avanti e installa
- Una volta installato con successo, dovrai riavviare Eclipse
Passaggio 3. Crea un progetto C++ in Eclipse e utilizza le seguenti impostazioni;
- Rendi il tipo di progetto un "AVR Cross Target Application"
- Assicurati che "Debug" non sia SELEZIONATO quando selezioni Configura configurazioni (e assicurati che "Rilascio" SIA SELEZIONATO)
- Quando vengono richiesti i dettagli hardware, assicurati di selezionare la frequenza corretta (in genere 16000000 Hz) e il microcontrollore corretto, in base al tipo di arduino [4]
Passaggio 4. Estrai l'ultima versione del software arduino dal loro sito web
Copia l'intera cartella '\hardware\arduino\cores\arduino' nella cartella del tuo progetto. Ora che Eclipse è installato e il plugin è configurato, d'ora in poi questa è l'unica cartella necessaria per avviare nuovi progetti Arduino da zero!
Passaggio 5. Crea main.cpp dove scrivi il tuo codice per Arduino in cui dichiarerai come al solito gli elementi principali, ad es
void setup, void loop e int main. Ad esempio (in main.cpp (il codice Arduino principale)). Includere anche "WProgram.h" (tra virgolette) in questa intestazione; questo lo collega a tutto il codice arduino. NOTA: a partire da Arduino 1.0, includi "Arduino.h" invece di "WProgram.h". Inoltre, includi il file "pins_arduino.h" appropriato da arduino-1.0.1\hardware\ arduino\varianti. Arduino Uno utilizza la variante "standard". Queste modifiche sono state apportate nella versione 2011.11.30 di Arduino 1.0, in base al file revisions.txt che si installa con l'IDE.
Passaggio 6. Opzionale:
Correggi eventuali errori del compilatore nel software arduino. Gli errori del compilatore saranno diversi per tutti a seconda di quale sia stato il tuo errore, che devi scoprire da solo o nei commenti, perché dipende dal caso. A partire da arduino v0018, questo potrebbe includere le seguenti modifiche;
- main.cpp; elimina "#include" in alto e assicurati che il tuo "main.h" sia invece incluso
- Tono.cpp; cambia gli ultimi due include, &, per avere virgolette invece di parentesi ("wiring.h" & "pins_arduino.h")
- Stampa.h; la dichiarazione della funzione "void function(int input) = 0;" deve essere cambiato in "void function(int input);", o in altre parole cancella "= 0" quindi non è una funzione puramente virtuale
Suggerimenti
- Conoscere il codice richiederà del tempo; ci sono alcuni errori che richiedono tempo per essere rintracciati.
- Assicurati di non creare con la configurazione 'debug'! Può causare errori extra
- Per scaricare i tuoi programmi sull'hardware, devi configurare AVR dude nelle impostazioni del tuo progetto per utilizzare la porta seriale corretta, 57600 baud, e l'impostazione di configurazione 'Arduino'.