La scheda Arduino UNO R3 , è la più famosa della serie Arduino, esiste sia nella versione con processore montato su zoccolo sia nella versione SMD.
Rappresenta un aggiornamento della precedente versione e aggiunge rispetto alla precedente tra le altre cose due pin (SDA e SCL) vicino ad AREF (zona pin digitali).
Altri due nuovi pin vicino a quello di reset: uno è IOREF (zona pin Power), che permette agli shield di adattare la tensione fornita dalla scheda. L’altro non è connesso ed è riservato per utilizzi futuri.
Indice
Descrizione
La R3 funziona con tutti gli shield realizzati per le versioni precedenti, vedere per esempio gli shield per moduli motore.
Caratteristiche della scheda
Microcontroller | ATmega328 |
Tensione di funzionamento | 5V |
Tensione in ingresso | 7-12 V (consigliata) |
Tensione in ingresso | 6-20 V (limiti) |
I / O digitali | 14 (di cui 6 con output PWM) |
Ingressi analogici | 6 |
Corrente continua per I / O Pin | 40 mA |
Di corrente per Pin 3,3 V CC | 50 mA |
Flash Memory | 32 KB di cui 0,5 KB utilizzati dal bootloader |
SRAM | 2 KB |
EEPROM | 1 KB |
Velocità di clock | 16 MHz |
Schema della scheda
Processore
Il cuore della scheda Arduino UNO R3 è rappresentato dal processore ATmega 328 un microcontrollore ad alte prestazioni con bus a 8 bit prodotto dalla Atmel con architettura di tipo RISC (acronimo di Reduced Instruction Set Computer)
le caratteristiche salienti di questo processore sono:
- Memoria flash da 32KB ISP con possibilità di lettura/scrittura
- EEPROM da 1KB
- SRAM da 2KB.
- 23 porte general purpose di I / O
- 32 registri di lavoro general purpose
- Tre flessibili timer / contatori con modalità di confronto
- Possibilità d’interrupts esterni e interni,
- Una seriale USART programmabile,
- Un’interfaccia seriale a 2fili compatibile I2C
- Una porta SPI seriale
- 6 convertitori A / D a 10-bit
- Timer watchdog programmabile con oscillatore interno
- Cinque modalità di risparmio energetico selezionabili via software.
- Tensione di funzionamento compresa tra 1,8-5,5 volt.
La memoria
Il microcontrollore ATmega328 della scheda dispone di 32 kB di memoria di programma. Di queste 0,5 kB sono usati per il bootloader, abbiamo poi di 2 kB di SRAM (Static Random Access Memory) ed 1 kB di EEPROM che possiamo leggere o scrivere utilizzando la EEPROM library.
Pin connettore POWER
Tutte le tensioni sono disponibili sui pin del connettore POWER
- Vin; restituisce la tensione applicata dall’alimentatore al plug e può essere usato per alimentare altri circuiti che dispongano già di un regolatore di tensione (ad esempio gli shield applicati al modulo);
- GND; è il contatto di massa (GND).
- 5 V; fornisce i 5 volt prelevati dall’uscita del regolatore interno ed è utile per alimentare altri circuiti compatibili con i 5 volt;
- 3.3V; questo pin fornisce i 3,3 volt ricavati dal regolatore corrispondente e consente di alimentare circuiti compatibili con tensioni di 3,3 volt (la massima corrente prelevabile e di 150 mA);
- RESET: Portando questa linea a livello basso permette di resettare il microcontrollore. Generalmente utilizzato per aggiungere un pulsante di reset sugli shields esterni. La funzione corrispondente può essere attivata anche tramite il pulsante presente sulla scheda Arduino;
- IOREF: consente agli shield di adattarsi alla tensione fornita dalla scheda.
Pin connettore DIGITAL (PWM ~)
Ciascuno dei 14 pin digitali presenti sulla Arduino Uno può essere utilizzato indifferentemente come un ingresso o un’uscita, utilizzando le funzioni pinMode(), digitalWrite(), e digitalRead().
Le uscite operano a 5 volt e ogni pin può fornire o ricevere un massimo di 40 mA ed è dotato di una resistenza pull-up (sconnessa di default) del valore di 20-50 kΏ.
Inoltre, alcuni pin hanno funzioni specializzate:
- Pin: 0 (RX) e 1 (TX): possono essere utilizzati per ricezione (RX) e trasmissione (TX) dei dati seriali TTL. Questi sono collegati ai pin corrispondenti della porta USB-TTL del processore ATmega8U2.
- Pin 2 e 3: possono essere configurati come trigger per eventi esterni, come ad esempio il rilevamento di un fronte di salita o di discesa di un segnale in ingresso.
- Pin 3, 5, 6, 9, 10 e 11: possono essere configurati via software con la funzione analogWrite() per generare segnali PWM con risoluzione di 8 bit. Tramite un semplice filtro RC è possibile ottenere tensioni continue di valore variabile.
- Pin 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK): possono essere programmati per realizzare una comunicazione SPI, utilizza un’apposita libreria SPI.
- Pin 13: è connesso a un LED interno alla scheda, utile per segnalazioni di diagnostica. Quando il livello del pin è HIGH, il LED si accende , se il livello del pin è LOW, il led si spegne
- GND; è il contatto di massa (GND).
- AREF: Tensione di riferimento per gli ingressi analogici. Utilizzato con analogReference().
Pin Analogici
La Uno R3 ha 6 ingressi analogici etichettati da A0 ad A5, ognuno dei quali fornisce 10 bit di risoluzione (in pratica 1024 valori diversi). Per impostazione predefinita possono misurare una tensione di 5V riferita a massa, anche se è possibile cambiare l’estremità superiore del loro intervallo utilizzando il pin AREF e la funzione analogReference(). Inoltre, come per i pin digitali alcuni piedini hanno funzionalità specifiche:
I pin A4 (SDA) e A5 (SCL). permettono di realizzare una comunicazione nello standard I2C a due fili, in abbinamento alla libreria Wire.
Esempio di utilizzo della scheda
Schede clone
Sul mercato esistono varie schede clone della Arduino UNO R3 vediamo alcuni esempi
Elegoo UNO R3
Per le sue caratteristiche vedere l’articolo Scheda UNO R3 – ELEGOO
Scheda Keyestudio PLUS KS0486
Per le sue caratteristiche vedere l’articolo Scheda Keyestudio PLUS KS0486