Per il modulo Wemos D1 mini sono disponibili molti shield, tra questi troviamo anche moduli display, quello che ho preparato ha il nome di OLED bicolor shield per Wemos D1 mini.
Lo shield permette di utilizzare dei normali display OLED da 0.96 ” bicolor o normali con una risoluzione di 128×64 pixel, che sfrutta il driver SSD1306 e si interfaccia tramite la connessione I2C.
Questi ultimi si trovano facilmente in rete ad un prezzo molto basso.
Il PCB è stato disegnato con il programma online EasyEDA, mentre è stato realizzato tramite il servizio offerto dal sito ALLPCB.
Per altri progetti realizzati con ALLPCB vedere il post ALLPCB – Anteprima PCB di progetti realizzati
Sito online per creazioni schemi e PCB | Sito produzione PCB |
Indice
Shield per Wemos D1 mini
Per la scheda Wemos D1 mini, prodotta dalla WEMOS/LOLIN sono disponibili vari shield che appartengono a varie categorie: Display & Interactive Shield, Environment, Power, Control, Others.
Quello presentato in questo articolo segue la stessa filosofia
Genesi del progetto
Prima di procedere alla stesura del progetto dell’OLED bicolor shield per Wemos D1 mini, si è realizzato un prototipo per verificarne la fattibilità. Come base si è utilizzato una ProtoBoard Shield.
Lo schema, disegnato con Fritzing è quello sotto riportato.
Sotto sono riportate alcune foto del test
Sotto sono invece visibili delle foto realizzate durante le fasi di realizzazione dei prototipo, basato sul KIT ProtoBoard Shield
i collegamenti realizzati tramiti cavi volanti
sotto il prototipo realizzato
Schema elettrico dell’OLED bicolor shield per Wemos D1 mini
Lo schema elettrico dello shied ricalca quello del prototipo realizzato con Fritzing.
una particolarità dello schema sono due jumper (.VCC e .GND) che permettono di fornire la giusta alimentazione ai pin del modulo OLED che, visto il doppio connettore, può essere istallato in modo che la striscia colorata sia visibile nella parte inferiore o nella parte superiore.
Il PCB che misura 25.4×28.58 mm è di tipo a doppia faccia con fori metallizzati. Sotto sono riportate le immagini relative al PCB , sia del rendering, realizzati dal programma EasyEDA: un servizio per il disegno di circuiti e la loro simulazione, progettazione e produzione di PCB. Provatelo è gratuito!
Schema della scheda in formato PDF
Il progetto completo può essere anche scaricato dal mio account presso OSHWLab, utilizzando questo link.
Alcune informazioni sul Wemos D1 mini
L’ultima versione del modulo WeMos D1 mini V 4.0.0. è basato sul microcontrollore Wi-Fi ESP-8266EX. che può essere programmato utilizzando l’IDE di Arduino oppure NodeMCU.
Il modulo WeMos D1 mini è dotato di una interfaccia USB realizzata tramite il convertitore seriale-USB CH340. Dal connettore USB viene anche prelevata l’alimentazione a 5V, un regolatore interno (tipo ME6211C33) si occupa di generare l’alimentazione a 3,3V per il modulo ESP.
Per evitare confusione tutti i pin di I/O sono chiaramente etichettati. Nota: Tutti gli I/O supportano una tensione massima di 3,3V
Versione | 4.0.0 |
Modulo ESP: | ESP-8266EX. |
Tensione di funzionamento | 3,3 V |
Pin I/O digitali | 11 interrupt/pwm/I2C/one-wire |
Porta USB | Type-C |
Pin di ingresso analogico | 1 (massimo 3,2 V) |
Porta I2C | 1 |
Clock Speed | 80/160 MHz |
Memoria Flash | 4M Bytes |
Compatibilità | MicroPython, Arduino, nodemcu |
Misure | 34,2 x 25,6 mm |
Peso | 3gr |
Descrizione del display utilizzato
Questo display di tipo OLED da 0.96 ” ha una risoluzione di 128×64 pixel, sfrutta il driver SSD1306 e si interfaccia tramite la connessioni I2C.
Il display ha la particolarità di avere una parte superiore di colore giallo e quella inferiore di colore blu.
Per altre informazioni vedere l’articolo Display bicolore OLED 0.96″ 128×64 – SSD1306
Caratteristiche
Dimensione: | 0.96 “ |
Risoluzione: | 128 x 64 pixel |
Driver IC: | SSD1306 |
Tensione: | 3,3 V-5 V DC |
Consumo energetico: | 0,06 W in visualizzazione normale |
Angolo di visione: | > 160 ° |
Temperatura di lavoro: | -30 ÷ 70 °C |
Display: | 2 file di giallo, 6 righe di blu |
Dimensioni del modulo: | 29,28 x 27,1 mm (LW) |
Materiale dello schermo: | vetro |
Durata: | non è inferiore a 16000 ore |
Pin Interfaccia
Il display dispone di 4 pin di collegamento, ecco la loro funzione:
- VCC: 3,3 V ~ 5 V
- GND: pin di massa
- SCL: I2C Serial Clock – High level 2.2V-5.5V
- SDA: I2C Serial Data – High level 2,2 V-5,5 V
Pin di alimentazione
Occorre porre l’attenzione sui due pin di alimentazione in quanto potrebbero essere invertiti. Tramite i due jumper (.VCC e .GND) presenti sul PCB è possibile utilizzare entrambe i modelli.
Come ordinare il PCB tramite ALLPCB
Per la realizzazione del PCB, si è utilizzato il sito ALLPCB
Ordinare i PCB tramite i sito di ALLPCB è molto semplice.
Dopo aver realizzato il progetto con il vostro programma preferito, per esempio EasyEDA, vi basterà preparare il relativo file Gerber.
Il formato GERBER è lo standard de-facto utilizzato per la produzione di circuiti stampati (PCB) per tracciare le connessioni elettriche quali piste, vias, e piazzole. In aggiunta, il file contiene informazioni per la foratura e la fresatura del circuito stampato e anche i testi da riportare sulla serigrafia
Accedete quindi al sito ALLPCB,
se non vi siete registrati , fatelo fornendo la vostra e-mail e creando una password. In questo modo vi sarà attribuito un vostro account ID.
Si inizierà inserendo le dimensioni del vostro PCB, attenzione a riportare esattamente quelle indicate dal programma utilizzato per la creazione del PCB. Eventuali errori vi saranno comunque segnalati al momento dell’accettazione del lavoro da parte della ALLPCB, con possibilità di correggere i valori.
Effettuale l’upload del file gerber, e indicate la quantità richiesta di PCB in multipli di 5. Per il resto potrete lasciare tutti i valori standard già presenti.
Ricordate che eventuali variazioni portano di solito a un aumento del costo finale del PCB.
Una volta indicato il paese di destinazione e il tipo di corriere o servizio di posta potete premere il tasto Quote Now, vi sarà mostrato il costo totale.
A questo punto potete procedere all’ordine premendo Add to Cart, occorrerà quindi procedere con il pagamento per ricevere i vostri PCB. Le fasi di costruzione e spedizione potranno essere seguite accedendo successivamente al sito.
Offerte per nuovi utenti
Offerta speciale, per solo 1 $ per schede a 1-6 strati, 5 pezzi, dimensioni entro 100 x 150 mm.
Il buono sconto sarà disponibile al momento della registrazione, il che significa che si ottengono quasi gratis PCB al primo ordine. Ecco li link per avere informazioni: Buono sconto per PCB
- Buono sconto di 75$ per assemblaggio di 10 PCB. Ecco il link per avere informazioni: Buono sconto per assemblaggio
Ricezione dei PCB
Dopo pochi giorni riceverete a casa il pacco con i vostri PCB
Esterno del pacco contenenti i PCB
Interno del pacco ricevuto
oltre i PCB richiesti relativi a più progetti anche dei gadget rappresentati da righelli realizzati con lo stesso materiale dei PCB
Ogni gruppo di PCB è protetto con del Pluriball, all’interno è presente anche un sacchetto di Gel di silice per eliminare l’umidità controllabile anche tramite un ‘etichetta che cambia colore se esposta all’umidità
Ecco i PCB prodotti, lato TOP e BOTTON
Dettaglio dei PCB
Costruzione
L’assemblaggio del PCB è piuttosto semplice. Occorreranno però alcuni strumenti :
- Per la saldatura, si utilizzerà un piccolo saldatore a punta fine, della potenza di circa 25 – 30 W.
- Stagno per saldatura ricavato, per esempio, da un rocchetto di stagno per saldatura con filo diametro 1 mm “lead-free” ovvero senza piombo. Lega composta dal 97% di stagno e 3% di rame;
Vedere anche gli articoli:
- Il laboratorio di elettronica – Le attrezzature
- Il laboratorio di elettronica – La strumentazione
- Come eseguire delle buone saldature
- Stazione di saldatura digitale ST50-D 50W.
Fasi di montaggio
Nelle immagini sotto riportate sono illustrati i pochi passaggi per la realizzazione dell’ OLED bicolor shield.
Componenti necessari
ID | Sigla | Descizione | Q.tà |
---|---|---|---|
1 | PCB OLED 128x64 shield | 1 | |
2 | Pin header M 1x8 | 2 | |
3 | J1 | Pin header F 1x4 | 1+1 |
4 | OLED 128x64 I2C | 1 | |
5 | U1 | Wemos D1 mini | 1 |
Si inizierà dalle due pin-strip maschio 1×8
si prosegue poi con una o due pin-strip femmina 1×4
Ora non resta che posizionare due gocce di stagno sulle piazzole per collegare nel modo corretto i pin di alimentazione 3,3V e GND
Sotto i due collegamenti effettuati
Posizioniamo il display sul connettore e il montaggio è concluso
sotto il montaggio realizzato
Libreria di gestione
Per utilizzare il display OLED è necessario installare l’apposita libreria. Può essere cercata tra le librerie installabili nell’IDE, basterà inserire nel campo di ricerca “Adafruit_SSD1306“.
Sarà anche mostrata una finestra che segnala che la libreria ha una dipendenza con la libreria grafica “Adafruit GFX Library“. Procedete premendo su “Install all”.
Per altre informazioni su come installare le librerie vedete l’articolo Arduino – Tutorial, come installare una libreria
Schema dei collegamenti
Per il test del display si è utilizzata una “Dual Base” su cui sono stati posizionati poi il modulo Wemos D1 nini o Wemos D1 Pro e il nuovo shield per il display.
Sketch per il test del modulo
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
#include <SPI.h> #include <Wire.h> #include <Adafruit_SSD1306.h> #define OLED_ADDR 0x3C //indirizzo Oled #define SCREEN_WIDTH 128 // Larghezza del display OLED in pixels #define SCREEN_HEIGHT 64 // Altezza del display OLED in pixels // Creiamo istanza del display connesso tramite I2C (SDA, SCL pins) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT); void setup() { display.begin( SSD1306_SWITCHCAPVCC, OLED_ADDR); // Avviamo il display pronto a ricevere le informazioni da visualizzare delay(2000); // Pausa di 2 secondi } void loop() { display.clearDisplay(); //Pulisce il buffer display.display(); //Mostra i colori dello schermo display.fillRect(0, 0, 128, 64, WHITE); display.display(); delay(1000); // Ripulisce lo schermo display.clearDisplay(); //Pulisce il buffer display.display(); // visualizza un pixel in ogni angolo dello schermo display.drawPixel(0, 0, WHITE); display.drawPixel(127, 0, WHITE); display.drawPixel(0, 63, WHITE); display.drawPixel(127, 63, WHITE); // Mostra alcune linee display.setTextSize(1); display.setTextColor(WHITE); display.setCursor(15, 5); // Imposta le coordinate di visualizzazione display.println("WWW.ADRIROBOT.IT"); // Dato che stiamo usando la parte superiore dell'OLED, il testo sarà in giallo display.setTextSize(2); //aumenta grandezza del carattere display.setCursor(25, 20); display.println("DISPLAY"); display.setCursor(30, 42); display.println("128x64"); display.display(); //Mostra i testi inseriti delay (2000); } |
Esempio di utilizzo del display
Sotto è riportato un’esempio di utilizzo dell’OLED Shield per realizzate una mini stazione meteorologica che sarà oggetto di un prossimo articolo.
Sotto lo schema della stazione che prevede vari shield tutti connessi tramite il bus I2C
- Tripler Base
- Modulo Wemos D1 mini
- DHT11 Sensore di Umidità e temperatura
- BMP180 Sensore di pressione atmosferica
- BH1750 Sensore di luce
- OLED bicolor shield Wemos
Altri display per modulo Wemos D1 mini
OLED Shield V1.1
L ‘OLED shield per Wemos D1 è un piccolo display monocromatico, con una misura in diagonale di 0,66 ” con una risoluzione di 64 x 48 pixel,
OLED 0.96″ 128×64 Shield
L’OLED 0.96 Shield prodotto da Wemos è un piccolo display OLED da 128×64 pixel con una dimensione di 0,49 pollici; si connette tramite I2C e viene alimentato con una tensione di 3,3Vcc.
Display TFT 2.4″ 340×240 touch – ILI9341
Display TFT 2.4″ a colori con funzione Touch , montato su uno Shield, compatibile con la WeMos D1 Mini Pro e Lolin D32 Pro.
Il display offre una risoluzione di 340×240 pixel, utilizza il driver ILI9341 come controller per il display LCD e il chip XPT2046 come controller per la funzione touch.
Altri progetti realizzati tramite il servizio offerto da ALLPCB
DFPlayer mini shied per Wemos D1 mini.
Modulo DFPlayer mini shied per Wemos D1 mini che permette l’utilizzo del modulo DFPlayer Mini con il modulo Wemos D1 mini.
Occhi robot con matrici 8×8 MAX7219
In questo articolo vediamo come realizzare degli occhi robot tramite matrici 8×8 pilotare da MAX7219 per mostrare semplici espressioni facciali.