Annuncio pubblicitario

circuito arduinoL'ultima volta che ti ho lasciato aver installato Guida introduttiva al kit iniziale Arduino - Installazione driver e impostazione della scheda e della portaQuindi, ti sei comprato un kit di avvio Arduino e forse altri componenti casuali interessanti - e adesso? Come inizi davvero a programmare questa cosa di Arduino? Come lo configuri ... Leggi di più il tuo Arduino per funzionare con Mac o Windows e dopo aver caricato una semplice app di prova che ha fatto lampeggiare il LED di bordo. Oggi spiegherò il codice che hai caricato, la struttura del software Arduino e un po 'di più sui bit elettronici sulla scheda stessa.

Questo articolo fa parte di un'introduzione alla serie Arduino. Gli altri articoli della serie finora sono:

  • Che cos'è Arduino e cosa puoi farci Che cos'è Arduino e cosa puoi farci?L'Arduino è un piccolo dispositivo elettronico straordinario, ma se non ne hai mai usato uno prima, esattamente cosa sono e cosa puoi fare con uno? Leggi di più ?
  • Che cos'è uno starter kit Arduino e cosa contiene?
    instagram viewer
    Cosa è incluso in uno Starter Kit Arduino? [MakeUseOf Explains]In precedenza ho introdotto l'hardware open source Arduino qui su MakeUseOf, ma avrai bisogno di qualcosa di più del semplice Arduino per costruirne qualcosa e iniziare davvero. Gli "starter kit" di Arduino sono ... Leggi di più
  • Componenti più interessanti da acquistare con il tuo kit di base 8 componenti più interessanti per i tuoi progetti ArduinoQuindi, stai pensando di ottenere uno starter kit Arduino, ma ti stai chiedendo se alcuni LED e resistori di base saranno sufficienti per tenerti occupato per il fine settimana? Probabilmente no. Eccone altri 8 ... Leggi di più
  • Guida introduttiva al kit iniziale Arduino - Installazione driver e impostazione della scheda e della porta Guida introduttiva al kit iniziale Arduino - Installazione driver e impostazione della scheda e della portaQuindi, ti sei comprato un kit di avvio Arduino e forse altri componenti casuali interessanti - e adesso? Come inizi davvero a programmare questa cosa di Arduino? Come lo configuri ... Leggi di più

L'hardware

Diamo un'occhiata più da vicino a ciò che Arduino Uno ha in termini di bit sul circuito.

Ecco un diagramma ingrandito a cui fare riferimento:

circuito arduino
  • Nella parte superiore, ci sono 14 pin digitali di Input / Output (numerati 0-13). Questi sono i pin più versatili sul tuo Arduino e possono funzionare come input o output e costituiranno il nucleo dei tuoi progetti. Digitale significa che il segnale che questi pin possono scrivere o leggere sarà acceso o spento.
  • 6 di quei pin digitali, che sono contrassegnati dal segno tilde ~ sono in grado di fare ciò che si chiama Modulazione di larghezza di impulso. Non sono un ingegnere elettrico, quindi non mi metterò in imbarazzo spiegando la scienza dietro questo, ma a te e io significa che siamo in grado di fornire una gamma di livelli di uscita, ad esempio dimmerando un LED o pilotando un motore a vari livelli velocità.
  • Il pin 13 è speciale in quanto ha un LED incorporato. Questo è solo per praticità e scopi di test. Puoi usare quel LED di bordo, come hai fatto nell'app di esempio Blink, semplicemente inviando al pin 13 - oppure può essere usato come un pin I / O standard.
  • In basso a destra ci sono 6 pin di ingresso analogico. Questi leggeranno il valore dei sensori analogici come un esposimetro o resistori variabili.
  • In basso a sinistra accanto ai pin di ingresso analogici sono presenti i pin di alimentazione. Gli unici di cui devi davvero preoccuparti sono i pin di terra (GND), le linee di alimentazione 3.3v e 5v.
  • Infine, l'unico interruttore trovato su Arduino è un interruttore di ripristino. Questo riavvierà qualunque programma abbia in memoria.
  • Arduino ha una quantità di memoria impostata e, se il tuo programma diventa troppo grande, il compilatore ti darà un errore.

La struttura di un programma Arduino

Ogni programma Arduino è composto da almeno due funzioni (se non sai cos'è una funzione, assicurati di leggere il mio tutorial di programmazione di base, parte 2 - dichiarazioni di funzione e controllo Le basi assolute della programmazione per principianti (parte 2)Nella parte 2 della nostra guida assoluta alla programmazione per principianti, tratterò le basi di funzioni, valori di ritorno, loop e condizionali. Assicurati di aver letto la parte 1 prima di affrontare questo, dove ho spiegato il ... Leggi di più , e parte 1 in cui abbiamo discusso delle variabili Nozioni di base sulla programmazione al computer 101 - Variabili e tipi di datiDopo aver introdotto e parlato un po 'della programmazione orientata agli oggetti prima e dove ha preso il nome viene da, ho pensato che fosse tempo di passare attraverso le basi assolute della programmazione in uno specifico non linguistico modo. Questo... Leggi di più prima di continuare).

La prima è la funzione di impostazione. Viene eseguito inizialmente - una sola volta - e viene utilizzato per dire ad Arduino cosa è connesso e dove, oltre a inizializzare le variabili di cui potresti aver bisogno nel tuo programma.

Il secondo è il ciclo. Questo è il nucleo di ogni programma Arduino. Quando Arduino è in esecuzione, una volta completata la funzione di installazione, il ciclo eseguirà tutte le operazioni codice, quindi esegui di nuovo il tutto, fino a quando non viene persa l'alimentazione o l'interruttore di ripristino premuto. Il tempo necessario per completare un ciclo completo dipende dal codice contenuto. Puoi scrivere del codice che dice "aspetta 6 ore", nel qual caso il ciclo non si ripeterà molto spesso.

Ecco un diagramma di stato rapido per illustrare:

circuito arduino

Esame del programma Blink

Dai un'occhiata al codice del programma Blink e identifica le funzioni di configurazione e loop.

Ecco la configurazione:

void setup () { // inizializza il pin digitale come output. // Il pin 13 ha un LED collegato sulla maggior parte delle schede Arduino: pinMode (13, OUTPUT); }

Le linee che iniziano con // sono semplicemente commenti per spiegare il codice a un lettore umano e non vengono caricati su Arduino. Quindi, in effetti, esiste solo una riga di codice di installazione in questa particolare app Arduino. Quella riga dice "Imposta il pin 13 in modalità di uscita". 13, ricorda, è il LED incorporato.

Quindi c'è il loop:

void loop () { digitalWrite (13, HIGH); // accende il LED. ritardo (1000); // aspetta un secondo. digitalWrite (13, LOW); // disattiva il LED. ritardo (1000); // aspetta un secondo. }

I commenti alla fine di ogni riga di codice spiegano abbastanza bene la loro funzione. HIGH e LOW si riferiscono allo stato ON e OFF di un'uscita digitale - nel nostro caso il LED. In realtà potresti anche scrivere ON o OFF nel codice, entrambi sono sinonimi (come anche 0 e 1). Ritardo dice ad Arduino di aspettare un po ', in questo caso 1000 millisecondi (o 1 secondo).

Infine, una nota sul linguaggio di programmazione utilizzato qui. Si noti che entrambe le funzioni di installazione e loop hanno la parola vuoto prima di loro. Questa è una parola speciale per Niente, perché la funzione non restituisce nulla quando viene chiamato, esegue semplicemente il codice contenuto all'interno. Per ora, lasciamolo dicendo che il blocco di codice della funzione è racchiuso tra parentesi graffe {} e che ogni riga di codice deve terminare con un; punto e virgola.

Prova a modificare il programma di base in qualche modo modificando i valori di ritardo preciso in qualcosa di più grande o più piccolo. Scopri quanto piccolo riesci a farlo scendere prima che il lampeggiamento non sia più evidente. Scopri quale valore modificare per farlo rimanere più a lungo o rimanere più a lungo. Prova ad aggiungere altre istruzioni digitalWrite e delay nella funzione loop per creare uno schema di lampeggiamento più complesso come il codice morse per SOS. Se hai un cicalino, prova a collegarlo anche ai pin 13 e GND (suggerimento: il filo rosso va a 13, nero a terra).

È tutto per oggi. La prossima volta aggiungeremo altri LED e scriveremo da zero la nostra applicazione. Come sempre, commenti e condivisioni sono molto apprezzati. Non riesco a immaginare che avresti avuto problemi con il codice a cui fai riferimento oggi, ma se hai provato a modificare leggermente il codice e incorrere in errori o comportamenti imprevisti, sentitevi liberi di pubblicarlo nei commenti e vedremo se riusciamo a risolverlo insieme.

James ha una laurea in Intelligenza Artificiale ed è certificato CompTIA A + e Network +. È lo sviluppatore principale di MakeUseOf e trascorre il suo tempo libero giocando a paintball e giochi da tavolo VR. Costruisce PC da quando era un bambino.