Il microcontrollore Arduino® è uno dei preferiti tra hobbisti, artisti e costruttori di robot che non sono necessariamente ingegneri elettrici. L’ambiente di programmazione Arduino® è basato su Processing, un linguaggio di alto livello che generalmente è più facile da imparare rispetto a C++ e Java. Le persone che stanno imparando la programmazione Arduino® o che programmano da un po’ in genere troveranno molto più facile creare codice funzionale seguendo i tutorial gratuiti Arduino®, facendo riferimento al linguaggio di riferimento, rimanendo organizzati e scrivendo le funzioni di un programma su carta prima scrivere qualsiasi codice. Ogni programma dovrebbe anche essere testato prima di essere caricato sul microcontrollore Arduino®.
Il sito Web ufficiale di Arduino® contiene un’ampia libreria di tutorial di programmazione per principianti e programmatori di livello intermedio. Questi tutorial insegnano cose come accendere un diodo a emissione di luce (LED) o far funzionare un motore. I principianti dovrebbero pianificare di seguire ogni tutorial nell’ordine in cui vengono presentati. La compilazione del codice e l’aggiunta di commenti per descrivere il significato di ogni riga aumenterà notevolmente la comprensione della programmazione Arduino® da parte di un principiante e migliorerà la sua memorizzazione di importanti concetti di programmazione.
Sul sito ufficiale di Arduino® sono presenti i link alle spiegazioni delle varie funzioni utilizzate dal linguaggio di programmazione Arduino®. Fornisce inoltre collegamenti a codice generato dalla comunità e librerie aggiuntive che possono espandere la funzionalità del codice Arduino® e del microcontrollore. Quando un programmatore si imbatte in un codice confuso, dimentica la sintassi di programmazione di Arduino® o ha bisogno di trovare il nome di una funzione, il sito Web di solito ha le risposte.
L’organizzazione può fare la differenza tra codice funzionale, chiaro e codice malfunzionante o incomprensibile. Affinché un progetto Arduino® funzioni, l’hardware e il software devono completarsi a vicenda. Se un pin viene erroneamente impostato come output invece di input nel codice, il dispositivo collegato potrebbe essere danneggiato. Per evitare questi errori, fai un elenco di tutti gli ingressi e le uscite collegati sul microcontrollore Arduino®. Annotare i nomi dei dispositivi collegati, i loro numeri di pin, se sono dispositivi di input o output e le loro tensioni di funzionamento. È molto più facile fare riferimento a un elenco che guardare ripetutamente le connessioni su Arduino®.
Rimanere organizzati significa anche che il codice dovrebbe essere letto bene. Definire le variabili globali, che vengono utilizzate in tutto il programma, prima dell’impostazione e assegnare a tutte le variabili nomi riconoscibili. La variabile che memorizza i valori in ingresso da un sensore a ultrasuoni, ad esempio, potrebbe essere denominata “UltrasonicReading”.
Le variabili utilizzate da una sola funzione devono essere definite all’interno di tale funzione. Ciò semplifica il debug del codice se una variabile memorizza un valore imprevisto. Un buon codice è anche commentato bene. Usa i commenti per descrivere cosa sta facendo il codice. Ciò rende molto più facile individuare i problemi, modificare il codice per applicazioni future e condividere il codice con altri programmatori.
I piccoli programmi possono essere codificati sul posto nell’applicazione di programmazione Arduino®, ma i programmi di grandi dimensioni generalmente non possono esserlo. I programmi di grandi dimensioni potrebbero contenere molte righe di codice, contenere più funzioni o interagire con più dispositivi. In genere è più facile scrivere un programma grande o complesso scrivendo le sue funzioni nell’ordine in cui si verificano sulla carta. I diagrammi di flusso sono strumenti utili per illustrare la funzionalità di programmi di grandi dimensioni e la pianificazione delle loro funzioni.
Per evitare di caricare codice errato sul chip del microcontrollore, testare prima tutto il codice nell’ambiente di programmazione Arduino®. L’applicazione di programmazione contiene un pulsante “Verifica/Compila” che assomiglia a un tipico pulsante di riproduzione. Dopo aver premuto il pulsante, viene verificata la presenza di errori in ogni riga di codice, inclusi gli errori di sintassi. Se viene rilevato un errore, il risultato viene visualizzato nella parte inferiore della finestra di programmazione.