Home
Accesso / Registrazione
 di 

Corso di programmazione per microcontrollori PIC. Decima puntata - 1

Corso di programmazione per microcontrollori PIC

Impariamo a programmare con la famiglia di microcontrollori PIC della Microchip, caratterizzata da una grande flessibilità d’uso e da un’estrema semplicità di impiego grazie alla disponibilità di uno Starter Kit a basso costo, di un ambiente di sviluppo software evoluto e di una vasta e completa libreria di programmi collaudati e pronti all’uso. Decima puntata.

Idisplay a cristalli liquidi (LCD) di tipo alfanumerico, ovvero adatti a visualizzare sia cifre che numeri, sono oggi sempre più diffusi e trovano impiego in moltissime applicazioni, ciò grazie sia alla disponibilità sul mercato di nuovi modelli a prezzi alla portata di chiunque sia al fatto che i display LCD di nuova concezione vengono forniti completi di driver di interfaccia in grado di pilotare autonomamente l’LCD partendo da semplici comandi ricevuti in formato digitale.

Quando un display LCD alfanumerico dispone dei driver di interfaccia viene semplicisticamente definito “intelligente”. Nonostante l’aggettivo che li contraddistingue, i display intelligenti richiedono quasi sempre l’interfacciamento ad un dispositivo a microcontrollore in grado di gestire i vari segnali che essi richiedono.

In questa puntata del Corso, vedremo quindi come funzionano questi tipi di display e nello specifico come gestirli utilizzando un microcontrollore della famiglia PIC. Come al solito, utilizziamo come hardware di riferimento la demoboard presentata nella settima puntata del Corso che implementa appunto un display intelligente tipo CDL4162 da 16 caratteri per 2 righe. Illustreremo quindi un programma adatto alla gestione di tale display rammentando però che le tecniche di programmazione che andremo ad acquisire sono valide per qualsiasi altro tipo di display purché alfanumerico.

Come già accennato, il nostro display dispone di un certo numero di linee per la comunicazione con i sistemi esterni (per la precisione, queste linee sono 11), oltre ad alcune linee necessarie per l’alimentazione e per la regolazione del contrasto. Delle 11 linee di comunicazione, i dati veri e propri viaggiano sulle 8 linee siglate DB0 ÷ DB7: nel caso la parola venga inviata in formato ad 8 bit, il bit di peso 0 andrà presentato sulla linea DB0, quello di peso 1 sulla linea DB1 e così via; gli stessi pesi valgono ovviamente anche per i dati letti dal display a patto che questo sia stato preventivamente inizializzato per lavorare con parole da 8 bit.

Vi è poi una linea denominata R/W (Read/Write) che ci permette di scrivere dei dati sul display oppure di leggere dei dati dal display; una linea denominata RS che ci permette di far sapere al display se stiamo inviandogli dei dati o delle istruzioni (quale ad esempio lo spostamento del cursore) ed una linea denominata E di abilitazione. Prima di poter utilizzare il display inviandogli dei caratteri da visualizzare, occorre inizializzare lo stesso attraverso una procedura ben definita, senza la quale diventa impossibile far visualizzare qualunque cosa al display.

 

 

Scrivi un commento all'articolo esprimendo la tua opinione sul tema, chiedendo eventuali spiegazioni e/o approfondimenti e contribuendo allo sviluppo dell'argomento proposto. Verranno accettati solo commenti a tema con l'argomento dell'articolo stesso. Commenti NON a tema dovranno essere necessariamente inseriti nel Forum creando un "nuovo argomento di discussione". Per commentare devi accedere al Blog

 

 

Login   
 Twitter Facebook LinkedIn Youtube Google RSS

Chi è online

Ci sono attualmente 8 utenti e 56 visitatori collegati.

Ultimi Commenti