Ciao a tutti
da poco ho ricevuto ripetute richieste per l'uso del display 84x84 sull'Arduino. Oggi vorrei mostrare brevemente il cablaggio e un esempio di applicazione. Il display "Nokia" è ora ampiamente utilizzato tra gli hobbisti perché il display non è solo molto economico (senza retroilluminazione), ma è anche facile da usare con la biblioteca giusta.
A questo punto vorrei ringraziare il signor Oliver Kraus, autore della scrofa di lana "u8g2" che depone le uova. Ora non c'è quasi un display che non funziona con esso e la documentazione non lascia nulla a desiderare :)
Per il nostro progetto abbiamo bisogno di:
- Nano V3
- Filo Breadboard & Jumper
- Convertitore di livelli logici
- Display 84x84 con controller PCD8544
Il cablaggio è un po 'più complesso:
Grazie alla buona etichettatura dei nostri moduli, questo è la metà così male come si può vedere nella foto in alto, ecco la tabella:
NanoV3 | Logiclevlekonverter | Visualizzazione |
Gnd | Gnd | Gnd |
5v | Vb | |
3V3 (in modo | Oe | |
3V3 (in modo | Virginia | Vcc |
D8 | B8 | |
D9 | B7 | |
D10 | B6 | |
D11 | B5 | |
D13 | B4 | |
A8 | Rst | |
A7 | Dc | |
A6 | Ce | |
A5 | Din | |
A4 | Clk | |
Leggero |
Il cablaggio retroilluminato è facoltativo. Dal momento che 4x 20mA LED sono installati nel display, non possiamo utilizzare il pin 3V3 del nano per questo, che offre un massimo di 50mA.
Se non si dispone di un convertitore di livello logico a portata di mano, è anche possibile Divisore di tensioneper le linee di dati (10k e 22k). La retroilluminazione non può essere collegata al convertitore.
Ecco il codice:
#include <Arduino.H> #include <U8g2lib.H> #include <Spi.H> U8G2_PCD8544_84X48_F_4W_SW_SPI u8g2(U8G2_R0, /E OROLOGIO/ 13, /e dati / 11, ////// 10, /e dc// 9, // reset / 8); Nokia 5110 Schermo Vuoto Installazione(Vuoto) { u8g2.Iniziare(); } Vuoto Ciclo(Vuoto) { u8g2.clearBuffer (buffer di chiaro)(); cancellare la memoria interna u8g2.setDisplayRotation (instato di visualizzazione di setDisplay(U8G2_R2);Rotazione del display di 180 gradi u8g2.setFont (carattere di comando)(u8g2_font_ncenB08_tr); scegliere un tipo di carattere adatto u8g2.drawStr(10,30,"Consegna da Az"); scrivere qualcosa alla memoria interna u8g2.sendBuffer (informazioni in base al pulsant(); trasferire la memoria interna sul display Ritardo(1000); }
Esempi di grafica, immagini e testo scorrevole con la libreria U8G2 sono disponibili Qui.
Divertiti a sperimentare e :)
1 commento
Bernd-Steffen Großmann
Kleine Korrektur zum Anschluss der Beleuchtung: Der LIGHT-Pin muss an Masse (GND) geschaltet werden, damit die vier LEDs leuchten, nicht an 3,3V – unabhängig davon, dass die Stromquelle dafür min. 80 mA liefern kann. Es handelt sich auch um ein 84×48-Display. (Schlaumeier-Modus wieder aus ;o) )