Gestione LCD con controllo di stato

Gabriel Rapetti | 28 dicembre 2011
Categorie: I vostri progetti - PIC® MCUs (8bit)

Molti utenti lamentano il fatto che le routine di gestione degli LCD basati sui controller HD44780 e compatibili, spesso non funzionano. Abbiamo già visto che il problema deriva soprattutto dalla fase di inizializzazione. Capita difatti che, seppure i vari tipi di controller siano compatibili tra loro, potrebbero avere delle “tempistiche” differenti per cui ecco che il codice scritto per un modello non funziona su un altro a patto di piccole modifiche.

La libreria in oggetto apporta una modifica a quella che abbiamo trovato nella lezione 7 del corso di programmazione. Illustro brevemente la modifica effettuata: siamo abituati a tenere il pin R/W del display a massa, utilizzando quindi il display in sola lettura. Sfruttando anche questa linea di comunicazione è possibile leggere lo “stato” del display ovvero il flag Busy che ci permette di sapere se il display è ancora impegnato nelle sue operazione o è pronto a ricevere dati/comandi.

Per poter utilizzare il display anche in lettura è necessario, oltre a collegare anche il pin R/W ad un IO del picmicro, gestire anche le linee dati per poter essere configurate come ingressi anzichè come uscite: portando il pin R/W a livello alto, il display restituisce lo stato sulla linea dati D7, nelle funzioni di scrittura possiamo quindi rimanere in attesa fino al momento in cui il display si libera.

La libreria aggiornata fa tutto da sè, l’unica modifica circuitale necessaria è quella di collegare anche il pin R/W del display ad un IO del picmicro. Per evitare problemi sui PIC16 è conveniente collegare tutte le linee dati ai pin di un solo banco di porte.

Download

Libreria LCD con controllo del flag Busy (567 download)

 



Questo articolo ti è stato utile? Ti ha permesso di risolvere un problema o di migliorare le tue applicazioni? Ci lavori? Ti ha permesso di scrivere la tua tesina? Ti ha semplicemente fatto spendere un po' del tuo tempo in maniera costruttiva? Allora clicca il banner qui sotto:


Settorezero.com è un blog personale di Giovanni Bernardo aperto dal 25 Ottobre 2007. Non è una testata giornalistica né un sito a carattere commerciale.
Settorezero.com, il logo Zroid™ e la tagline "Play embedded electronics™" sono copyright ©2007÷2019 Giovanni Bernardo.
La navigazione su settorezero.com e la fruizione dei contenuti ivi presenti sono soggette ai seguenti Termini di utilizzo - Informativa sulla privacy - Utilizzo dei Cookie.
Il tema di questo sito è basato sul tema Fusion per wordpress, realizzato originariamente da digitalnature e fa uso del plugin Wassup per il computo delle statistiche.
Per poter contattare il gestore del sito potete utilizzare la sezione contatti o inviare una email a gianni[at]settorezero[dot]com.
Per seguire gli aggiornamenti del blog Settorezero, oltre al feed RSS, puoi anche seguire la pagina Facebook o iscriverti al canale Telegram.
Su Twitter, invece, pubblico un po' di tutto e, quando mi va, uso anche Tumblr - Google+ - Blogspot - Youtube.