GPIO Speed test e considerazioni sulla UNO WiFi r2
Nonostante la presenza di alcune schede della serie MKR che hanno a bordo il modulo WiFi è da qualche tempo disponibile la scheda UNO WiFi r2. Questa nuova scheda ha numerose funzionalità rispetto alla UNO (basata sul micro ATMEGA328) e personalmente credo che la caratteristica maggiore sia la presenza del microcontrollore ATMEGA4809. Nonostante la maggior parte dei progetti basati su Arduino impieghi il micro ATMEGA328 probabilmente è ora il momento di guardare avanti utilizzando un nuovo microcontrollore.
ATMEGA4809 Arduino UNO WiFi r2Per capire cosa c’è di nuovo nell’ATMEGA4809, di seguito una tabella comparativa tra i vari micro delle schede Arduino UNO, Leonardo e UNO WiFi
UNO | LEONARDO | UNO WiFi R2 | |
FLASH Memory | 32KB | 32KB | 48KB |
SRAM | 2KB | 2.5KB | 6KB |
EEPROM | 1KB | 1KB | 256B |
EEPROM | 1KB | 1KB | 256B |
CPU Clock | 16MHz | 16MHz | 16MHz |
Operating Voltage | 5V | 5V | 5V |
PIN IO | 14 | 20 | 14 (disponibili 41) |
Seriale | 1 | 2 | 4 |
I2C | 1 | 1 | 1 |
SPI | 1 | 1 | 1 |
Timer | 2 a 8 bit ,1 a 16 bit | 2 a 8bit, 2 a 16bit | 5 a 16 bit |
ADC | 6 ch a 10bit | 12ch a 10 bit | 16ch a 10bit |
Si può notare subito una maggiore quantità di memoria programma, una maggiore quantità di memoria SRAM e la presenza di ben 4 seriali UART.
Il package può essere un limite, sono disponibili infatti il TQFP48 e il UQFN, e questo significa che per utilizzarlo in progetti custom è necessario utilizzare un pcb o un supporto adattatore (TQFP to DIP).
Probabilmente avrebbe più senso avere una versione delle schede serie MKR con questo microcontrollore. In questo modo verrebbe semplificata la prototipazione di schede custom.
Sulla carta l’ATMEGA4809 ha molte caratteristiche che potrebbero permettere una evoluzione della piattaforma Arduino basata sui microcontrollori a 8 bit. La presenza di 5 timers, il gran numero di line GPIO (41), 11 linee PWM e altre funzionalità, che potete leggere sul datasheet, lo candidano (forse) ad essere il dispositivo ideale per essere utilizzato nelle future schede.
ATMEGA4809 Speed Test
Come negli articoli precedenti ho eseguito una commutazione continua di una linea GPIO per misurare la frequenza di commutazione. Eseguendo il codice sottostante e misurando e misurando con un oscilloscopio la frequenza di commutazione presente sulla linea GPIO 0 ho ottenuto un valore di circa 138.3KHz.
void setup() { //pin0 in uscita pinMode(0, OUTPUT); } void loop() { //ciclo infinito while(true) { //metto il pin0 alto digitalWrite(0, HIGH); //metto il pin0 basso digitalWrite(0, LOW); } }
Di seguito la tabella riepilogativa aggiornata:
Tipo Scheda | Frequenza di commutazione |
Genuino 101 | 320 KHz |
Genuino MKR1000 | 316.3 KHz * |
Arduino UNO | 147.5 KHz * |
Arduino LEONARDO / MICRO | 143.8 KHz * |
Arduino UNO WiFi r2 | 138.3 KHz |
Flyport Ethernet | 134.5 KHz |
Netduino Plus 2 | 44.27 KHz |
FEZ Panda II | 12.7 KHz |
Netduino | 8.4 KHz |
Le voci dove è presente l’asterisco (*) sono i nuovi valori ottenuti utilizzando gli ultimi aggiornamenti (Arduino avr Boards versione 1.6.23)
Leggi anche questi articoli:
Related posts
Articoli popolari
Sorry. No data so far.
.Net micro framework Arduino Arduino Webserver Domotica Flyport I2C IOT Netduino OpenPicus raspberry RTC Speed Test