Arduino® è un microcontrollore aumentato open source programmato utilizzando un linguaggio basato su Wiring. Il suo ambiente di sviluppo, tuttavia, si basa su Processing, un linguaggio di programmazione scaricabile gratuitamente comunemente utilizzato per generare grafica computerizzata e visualizzazioni di dati complessi. Gli schizzi, che sono anche chiamati programmi, integrati in Processing e nel linguaggio Arduino® utilizzano l’estensione del file Processing Development Environment (PDE). Inoltre, gli sketch di Processing e Arduino® possono comunicare tra loro, fornendo un controllo bidirezionale sugli sketch di Processing e sull’hardware Arduino®.
La comunicazione può essere unidirezionale o bidirezionale tra gli ambienti Processing e Arduino®. I dati di uno schizzo di elaborazione, ad esempio, possono essere utilizzati per controllare l’hardware collegato al microcontrollore Arduino®, oppure i dati del microcontrollore possono essere utilizzati per controllare la funzionalità di uno schizzo di elaborazione. In alternativa, entrambi gli ambienti possono influenzarsi a vicenda contemporaneamente. Alcuni esempi di progetti di Processing e Arduino® includono l’utilizzo di potenziometri per controllare il colore di un oggetto visualizzato da uno sketch di Processing e l’utilizzo di eventi clic del mouse da uno sketch di Processing per controllare una serie di diodi a emissione di luce (LED).
I linguaggi Processing e Arduino® comunicano tra loro attraverso il codice e la porta USB (Universal Serial Bus), che emula e si presenta come la porta seriale del computer. Per impostare la comunicazione bidirezionale tra il microcontrollore e Processing, o per controllare Processing con Arduino®, gli utenti scrivono schizzi in entrambe le lingue. Lo sketch Processing cerca la porta seriale collegata ad Arduino®, mentre il codice del microcontrollore riceve e trasmette i dati dagli ingressi e dalle uscite di Arduino®. Ciò fornisce agli hobbisti il controllo totale sui loro progetti.
La libreria Arduino® gratuita disponibile per Processing consente agli utenti di controllare un Arduino® con i dati di Processing senza scrivere alcun codice per il microcontrollore. Invece, un programma standard viene caricato sulla scheda e l’utente scrive il codice nello sketch di Processing. Il codice scritto svolge tipicamente le seguenti funzioni: trova e apre la porta seriale collegata ad Arduino®, memorizza i dati dal microcontrollore in variabili e utilizza i dati per controllare diversi parametri, come la dimensione o il colore di un oggetto, nel Schizzo di elaborazione.
Le persone che stanno imparando a lavorare con Arduino® e Processing possono trovare schizzi di esempio nell’ambiente di programmazione Arduino®. Questi schizzi vengono forniti con ogni download dell’applicazione e gli utenti in genere possono eseguirli senza scrivere codice aggiuntivo. I creatori dell’Arduino® forniscono anche l’elaborazione completamente commentata e il codice Arduino® online.