Per tutti i lavori sinora fatti, abbiamo utilizzato dispositivi Arduino Uno R3 comprati e già pronti all’uso. Tuttavia, come noto, Arduino è un progetto open, quindi possiamo realizzare un nostro Arduino custom, cioè personalizzato. Per fare ciò è sufficiente una manciata di componenti:
1. Microcontrollore Atmel ATMEGA328P (con il bootloader precaricato)
2. Quarzo 16 MHz
3. 2 condensatori ceramici da 22 pF
4. Pulsante
5. LED Verde (opzionale, per testare il pin 13 con lo sketch Blink)
6. Resistore da 220 Ω (Opzionale)
7. Resistore da 10 kΩ
Darò per scontato, nella prima versione, che il circuito che propongo non sarà indipendente, ma faremo uso di un Arduino Uno R3 (con il circuito integrato su zoccolo) come programmatore per trasferire gli sketch sull’integrato ATMEGA328P già dotato di bootloader. Quindi il nostro primo Arduino custom sarà un dispositivo già programmato che svolgerà il suo compito all’accensione dell’alimentazione. Lo schema base di costruzione potrebbe essere il seguente.
Ho montato su una mini breadboard la mia versione di questo circuito e ho usato per l’alimentazione a 5 Vcc la stessa scheda di regolazione della tensione che ho utilizzato nell’esperienza con i relè, connessa a un alimentatore da 9 Vcc.
Il pulsante che è visibile sul lato sinistro serve per effettuare il reset dell’Arduino custom. Qualcuno potrebbe obiettare che l’Arduino custom non è programmabile, ma con pochi passaggi ovvieremo grazie alla piccola scheda visibile nella seguente figura.
Questo dispositivo è in sintesi un convertitore USB–UART. Utilizzeremo, come sempre, il programma Arduino facendo attenzione di selezionare “Arduino Uno” e la opportuna porta COM. Non sarà necessario alimentare il nostro “Arduino custom completo” in quanto i 5 Vcc verranno forniti dallo stesso convertitore USB-UART. Il condensatore che va sul pin DTR è da 100 nF. Lo schema finale può essere il seguente (Attenzione! La scheda utilizzata nel disegno ha i terminali disposti in modo diverso da quella che ho utilizzato).
Nella figura sottostante ho montato il tutto su una breadboard più grande per avere più spazio per poter sviluppare. Si noti che ho adottato uno zoccolo blocca integrato a leva che rende più agevoli le operazioni di rimozione dell’integrato qualora si utilizzasse questa realizzazione come programmatore.