Lezione 1
Prima di cimentarci nella programmazione dobbiamo conoscere la scheda che abbiamo tra le mani in ogni sua funzione quindi si parlera' di hardware. Il software lo vedremo tra qualche lezione. Le funzioni di ogni scheda potrebbero cambiare, dipende dal modello di Arduino che possedete, io vi consiglio di partire con la classica scheda Arduino UNO poiche' in questa lezione viene presa questa come esempio.
Iniziamo con il consultare le seguenti immagini per farci subito un idea delle funzioni di ogni pin. Come avrete ben capito abbiamo a disposizione un totale di 20 pin di cui 6 analogici e 14 digitali della quale 6 supportano il PWM (Pulse Width Modulation) che vedremo piu' avanti. Inoltre abbiamo 3 pin GND per la massa, 1 pin 5V, 1 pin 3.3V, 1 pin per effettuare il reset della scheda e 1 pin chiamato VIN per alimentare la scheda con una tensione. E' importante ricordare che i pin digitali 0 e 1 sono rispettivamente RX e TX della porta seriale hardware utilizzata anche dal chip usb, questo significa che se li utilizzate non potrete utilizzare il monitor seriale quindi evitate di occuparli se non e' strettamente necessario (lasciateli per ultimi).
Vicino al pulsante di reset ci sono altri 6 pin che compongono il connettore ICSP (In Circuit Serial Programmer) per utilizzare la comunicazione ISP (In System Programming) e programmare il microcontrollore direttamente su scheda senza rimuoverlo (da utilizzare per esempio nel caso in cui abbiamo la necessita' di riscrivere il bootloader, cosa non possibile via usb). I 6 pin sono:
Ci sono 3 modi per alimentare una scheda Arduino:
Inoltre e' importante tener conto del discorso corrente. Potete richiedere al microcontrollore massimo 40mA per pin (20mA raccomandati) e un massimo di 200mA in totale su tutti i pin. Se superate questi limiti rischiate di cuocerlo.
Iniziamo con il consultare le seguenti immagini per farci subito un idea delle funzioni di ogni pin. Come avrete ben capito abbiamo a disposizione un totale di 20 pin di cui 6 analogici e 14 digitali della quale 6 supportano il PWM (Pulse Width Modulation) che vedremo piu' avanti. Inoltre abbiamo 3 pin GND per la massa, 1 pin 5V, 1 pin 3.3V, 1 pin per effettuare il reset della scheda e 1 pin chiamato VIN per alimentare la scheda con una tensione. E' importante ricordare che i pin digitali 0 e 1 sono rispettivamente RX e TX della porta seriale hardware utilizzata anche dal chip usb, questo significa che se li utilizzate non potrete utilizzare il monitor seriale quindi evitate di occuparli se non e' strettamente necessario (lasciateli per ultimi).
Vicino al pulsante di reset ci sono altri 6 pin che compongono il connettore ICSP (In Circuit Serial Programmer) per utilizzare la comunicazione ISP (In System Programming) e programmare il microcontrollore direttamente su scheda senza rimuoverlo (da utilizzare per esempio nel caso in cui abbiamo la necessita' di riscrivere il bootloader, cosa non possibile via usb). I 6 pin sono:
- 5V per alimentare la scheda
- GND
- MISO Master Input Serial Output
- MOSI Master Output Serial Input
- CLK Clock
- RESET, utilizzato a fine programmazione per riavviare la scheda
Ci sono 3 modi per alimentare una scheda Arduino:
- Tramite il connettore USB (sconsigliato per i progetti finiti poiche' non permette il passagio di molta corrente specialmente se ci si collega ad un computer ~500mA). In questo caso entriamo con una tensione di 5V che va ad alimentare direttamente il Chip Seriale-USB e il microcontrollore senza essere stabilizzata.
- Tramite il Jack DC, dove possiamo entrare con una tensione minima di 7V e massima di 12V, e' possibile arrivare fino a 20V ma e' fortemente sconsigliato. In questo caso la tensione viene stabilizzata a 5V grazie al regolatore di tensione integrato nella scheda (7805 oppure 1117).
- Tramite il pin VIN (stesso discorso del Jack DC).
- Tramite il pin 5V, questo pin funziona sia da output che da input, l'importante pero' e' non superare i 5V poiche' non e' stabilizzato e rischiate di bruciare il microcontrollore.
Inoltre e' importante tener conto del discorso corrente. Potete richiedere al microcontrollore massimo 40mA per pin (20mA raccomandati) e un massimo di 200mA in totale su tutti i pin. Se superate questi limiti rischiate di cuocerlo.
La scheda e' composta da svariati componenti:
La lezione 1 e' terminata, vi consiglio di fare una pausa di 15 minuti dopo la quale dovrete prendere la scheda Arduino in mano e ripetere tutte le funzioni dei pin/componenti presenti sulla scheda. In questo modo vi rimarranno impresse e sara' piu' facile ricordare.
Se avete intenzione di approfondire il microcontrollore (componente principale della scheda Arduino) andate nella sezione apposita in QUESTA pagina.
- Microcontrollore ATMega328
- Convertitore Seriale-USB per permettere l'utilizzo della connessione USB invece della connessione seriale tramite connettore RS-232
- Quarzo 16Mhz per far oscillare il microcontrollore
- Sezione di alimentazione (Condensatori di filtro, stabilizzatore di tensione e diodo di protezione contro l'inversione di polarita').
- Pulsante di reset per riavviare la scheda
- Fusibile per salvaguardare la scheda da eventuali corto circuiti
- 4 LED, 1 per visualizzare lo stato di alimentazione (ON-OFF), 1 programmabile collegato al pin digitale numero 13, e 2 LED per la comunicazione UART-USB che indicano lo stato del flusso dati sulle linee RX (Ricevente), TX (Trasmittente).
La lezione 1 e' terminata, vi consiglio di fare una pausa di 15 minuti dopo la quale dovrete prendere la scheda Arduino in mano e ripetere tutte le funzioni dei pin/componenti presenti sulla scheda. In questo modo vi rimarranno impresse e sara' piu' facile ricordare.
Se avete intenzione di approfondire il microcontrollore (componente principale della scheda Arduino) andate nella sezione apposita in QUESTA pagina.