Realizzare uno shield Arduino per programmare i microcontrollori ATmega328P “vergini”, cioè privi di bootloader.
Il bootloader è necessario per poter utilizzare i microcontrollori con le schede Arduino. I microcontrollori acquistati separatamente - cioè non montati su una scheda Arduino - non contengono un bootloader e per essere utilizzati devono essere programmati con un programmatore (ad esempio l'AVRIPS della Atmel) e un software di sviluppo dedicato (ad esempio Atmel Studio). Per utilizzare gli ATmega328P vergini sulle schede Arduino e per poterli programmare con il suo ambiente di sviluppo è necessario scrivere il bootloader Arduino sul microcontrollore. Questa operazione, chiamata anche flash del bootloader, si può fare in più modi:
L'ultima soluzione è l'obiettivo di questo progetto.
Una volta scritto il bootloader si può montare il microcontrollore sullo zoccolo di una scheda Arduino e utilizzarlo normalmente (o utilizzare la scheda solo per caricare un programma sul microcontrollore e poi spostarlo un una scheda elettronica custom).
Il bootloader è un programma - o meglio un firmware - contenuto nella memoria del microcontrollore che viene eseguito ogni volta che si alimenta o resetta il microcontrollore. Il bootloader:
Lo shield si basa sullo schema del tutorial ufficiale ma al posto della breadboard si vuole usare uno shield apposito.
E' sufficiente replicare i collegamenti conoscendo il pinout della scheda Arduino e dell'ATmega328 (mostrato in figura).
In particolare occorre collegare:
In figura un primo tentativo di layout monofaccia.
Si vede che manca un collegamento (ratsnest gialla da GND superiore a inferiore), ma il collegamento è comunque presente sulla scheda Arduino Uno su cui lo shield va montato. Senza questo accorgimento bisogna ricorrere a una scheda a doppia faccia.
Inserire il chip ATmega328P vergine nello zoccolo e montare lo shield sulla scheda Arduino.
Utilizzando il software Arduino:
riferimenti:
Definizioni:
Torna all'indice.