Pagina 1 di 6

Gestione display OLED

MessaggioInviato: 29 apr 2024, 23:58
da Saverio15
Buon sera a tutti. Ho bisogno del vostro aiuto.
Ho collegato i programmi di 4 strumenti (prelevati dalla rete). che presentano i loro dati e li visualizza correttamente su di un display LCD I2C e su un display OLED SSD1306.
Ma.... ci sono 2 problemi sul solo display OLED.
Il primo è che le scritte presentate sono un po' più grandi del solito, ma quello che più disturba è che si notano molto i pixel.
Il secondo problema solo sul display OLED, è che nel rinfrescare i valori letti, quest'ultimi vengono scritti sopra la presentazione precedente senza che questi primi valori siano stati cancellati.
Come si può immaginare la lettura del nuovo dato risulta impossibile.
Come si può risolvere questi problemi?
Grazie a chi vorrà aiutarmi.

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 8:19
da lelerelele
ti rispondo in merito a quel poco che so. non ho grande esperienza in merito.

per quanto riguarda i caratteri grossi e squdrettati, penso possa essere una differente risoluzione tra gli schermi, se viene inviato il carattere come byte, (se lo schermo non ha un suo sistema di scrittura del font), questo carattere sarà grafico con una sua risoluzione che può dfferire da quella dello schermo.

per la gestione del refresh, suppongo che siano diversi i segnali di controllo tra i due schermi, quindi non viene eseguito correttamente.

io mi studierei i segnali di controllo dei due schermi, da qua risalirei ad i segnali che vado ad inviare al OLED correggendo gli errori di refresh.

saluti.

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 8:33
da ThEnGi
è difficile aiutarti senza avere un riferimento di:
  • uC utilizzato
  • librerie utilizzate
  • modello dello schermo e risoluzione
  • codice programma utilizzato

Ma cosi a sensazione è una questione di librerie, avendole prese online non sai cosa fanno :ok:
O_/

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 8:56
da Saverio15
Vorrei inserire due foto per capire meglio il difetto nella visualizzazione del display ma non sono riuscito a farlo.
Come si fa?
Le foto hanno un limite di MB?

Grazie.

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 9:29
da Etemenanki
Nella finestra di risposta, apri il tab invia allegato, scegli il file da li, e lo carichi ... ci sono limiti ma se li superi te lo dice, anche i formati permessi non sono tutti quelli esistenti, ma jpg e png li dovrebbe accettare senza problemi.

esempio.png

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 9:30
da alev
Le foto si inseriscono con l'opzione "Invia allegato" sotto il box di scrittura del messaggio

C'è un buon tutorial per gestire dimensioni ed altro:

https://www.electroyou.it/donj/wiki/gui ... a#Immagini

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 11:11
da Saverio15
Ecco le foto che visualizza i difetti del display OLED.
Ho dovuto ridurre il peso delle foto.
IMG_20240426_103124-min (1).jpg
IMG_20240426_102831-min (1).jpg

Re: Gestione display OLED

MessaggioInviato: 30 apr 2024, 12:13
da Etemenanki
Potrebbe dipendere anche dal tipo di font, oltre che dalla libreria usata ... tempo fa ho fatto un logger usando un'oled da 1.3 pollici, e la libreria SSD1306Ascii (https://github.com/greiman/SSD1306Ascii , se ti serve solo testo e' molto piu semplice e funzionale del mattone adafruit) ed il suo font 10x15 per avere lettere grandi (ma dispone di parecchi altri font), e ne e' uscita questa roba qui: https://imgur.com/RRVX2FQ (ovviamente se usi un font piu piccolo le linee non sono spesse due pixel come qui, ma una sola, per cui potrebbero apparire piu puntinate, devi provare i vari font finche' trovi quello che va bene a te' )

Re: Gestione display OLED

MessaggioInviato: 2 mag 2024, 10:48
da Saverio15
Grazie per l'attenzione al mio problema.
Come avrete già capito, non ho dimestichezza con Arduino e soprattutto nel gestire le librerie.
Sembra che nel display i punti in verticale dei caratteri siano scritti uno si e uno no.
Allego la parte iniziale del mio sketch, c'è qualcosa che non va?
Con altri sketch copiati dalla rete e lo stesso display, i caratteri sono "normali".
Sarei grato se mi si indica come procedere per l'eventuale modifica del programma.
Grazie.

Ecco la parte iniziale del mio sketch.

// 8-A - Strumento grotta con OLED SSD1306 del 22.04.2024
// Nel programma sono usati:
// Arduino Nano
// Display OLED SSD1306
// Sensori: Metro: HY-SRF05 – Inclinometro: GY-521 – Bussola: GY-271 - Temperatura: DHT22

// *******************************************************************
// Display OLED

#include <SPI.h>
#include <Wire.h>
#include <Adafruit_SSD1306.h>
#define OLED_ADDR 0x3C
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT);

Re: Gestione display OLED

MessaggioInviato: 2 mag 2024, 12:11
da WALTERmwp
Ciao @Saverio15.
Senza leggere il codice che ha prodotto la libreria è difficile indovinare.
Certo, se qualcuno l'avesse già usata magari ci darebbe delle conferme(o smentite).
Faccio tre ipotesi, campate per aria:
i) il codice usa quei caratteri quindi non puoi farci nulla;
ii) il codice prevede la parametrizzazione della dimensione dei caratteri basandosi solo sulle define SCREEN_WIDTH e SCREEN_HEIGHT; poco probabile, brutta cosa, ma non impossibile vista l'assenza d'altre definizioni(fai un tentativo modificandole) a meno che tu non ne abbia scordata qualcuna.
iii) per i caratteri illeggibili(tipo 51), se il difetto non si presenta sempre nello stesso punto, si potrebbe pensare ad un problema nella gestione degli eventuali errori sul bus i2c(però gli altri nodi sembrerebbero esenti); anche in tal caso non puoi farci niente se non cercare la controprova scollegando qualcosa dal bus.
Prendi queste ipotesi per quel che valgono.

Saluti