Tutorial Display LCD e PIC

Documenti analoghi
Interfaccia seriale per LM709SW

Le sintonie elettroniche per l ATV

I.T.T.S. "Cerulli" GIULIANOVA -TE- Laboratorio di Robotica Educativa Tutorial Robot in... 5 minuti!

Versione 1.7. Manuale per Creatori Corsi. Parte I: Accesso e Creare Risorse

Comando manuale ventola raffreddamento elise S1

+ - Alimentazione Da 8VDC/ MAX 12VDC

Per vedere tutti i tutorial:

Generalità. Descrizione del dispositivo. Disposizione dei componenti

Prof. Elena Spera I.C. Marzabotto (Bo) a.s. 2005/06. Power Point. Esercitatrice: Elena Spera. 1

I Circuiti combinatori: LOGISIM

8^ parte : Come pilotare i motori passo-passo unipolari. Author: Ing. Sebastiano Giannitto (ITIS M.BARTOLO PACHINO)

SOFTWARE DI PROGRAMMAZIONE CENTRALINA D'IRRIGAZIONE HIRIS/COMPACT

Corso introduttivo sui microcontrollori. Un sistema tastierino a matrice 4x4 da collegare alla nostra demoboard AnxaPic.

Applicazioni dei microcontrollori PIC

PROGRAMMA SVOLTO Materia: Informatica Docentte:: PERAZZOLO GIANTONIO

II.3.1 Inverter a componenti discreti

È evidente che utilizzando elementi di forme e/o dimensioni diverse sarà necessario apportare le opportune modifiche ai particolari indicati.

Circuito logico AND / AND Gate

La stampa Unione con MS-Word

Un sito con Wordpress

Questo corso di formazione è stato creato da 5 organizzazioni che si occupano di diritti delle persone con disabilità intellettive in cinque diversi

Lab. Sistemi - Classe 5Bn A. S. 2000/2001 ITIS Primo Levi - Torino AA.AA. STANDARD SERIALE DI COMUNICAZIONE: RS232 Lo standard seriale di

Un convertitore D/A o digitale/analogico è un dispositivo che ha lo scopo di

Informatica! Appunti dal laboratorio 1!

Voglio scrivere un romanzo (parte 2)

Inverter X-Hybrid Un unica soluzione per lo storage domestico e non solo!

G S M C O M M A N D E R Basic

PLAFONIERE

La stampa Unione con MS-Word

Vogliamo far lampeggiare i led collegati come in figura ai bit della porta D del PIC 18F8722 presente sulla demo board in dotazione al laboratorio.

Modulo 1 Concetti di base della Tecnologia dell Informazione

REGOLAZIONE SPECCHI ESTERNI - Descrizione

Tastierini HomeWorks QS Dynamic

Componenti e connessioni. Capitolo 3

RM-LVR1. Live-View Remote

In questo tutorial decodificheremo i segnali provenienti da un telecomando qualsiasi e utilizzeremo gli stessi segnali per comandare Arduino a

Aggiornamento dei dati dell obiettivo per il controllo distorsione

Relè di alimentazione SPST,10 Pezzi,DC 5V Bobina 7A 240VAC 10A 125VAC/28VDC 5 pin JQC-3F

DISPLAY REMOTO PILOTATO DALLA SERIALE. LCD_SERv10

Grazie per aver acquistato un cronometro a intervalli GYMBOSS minimax.

Modulo di frenatura ( Marklin 72442) auto costruito v 3.0 del 19/06/2010 by LucioTS

CURRICOLO DIPARTIMENTO INFORMATICA PRIMO BIENNIO

Come è fatto un computer

Supplemento al Manuale di istruzioni

IST-1395.CS01.01/A CE395CS / Istruzioni d uso Pag. 2/6

Convoglio Navetta. Alimentazione commutata, a seconda della direzione di marcia, dalla loco o rispettivamente dalla semipilota.

Raccolta e memorizzazione dei dati immessi nei moduli dai visitatori

TERMOSTATO DIGITALE Mod.HD-310 Cod

Inserire un avviso in DidUp

Scheda Didattica di Sperimentazione.

All interno di un ATmega16 troviamo moltissimi dispositivi trai quali, timer, gestori delle interupt personalizzabili, convertitori A/D, multiplexer

Show Designer 192 Dmx. Model SHOW DESIGNER 192 DMX USER MANUAL

Nuove pagine e collegamenti

MST_K12_INV2 Regolatore di velocita per motori in CC con inversione automatica della rotazione

Esercitazione. Excel: le macro. C.1 Registrazione di macro

PROGRAMMAZIONE COORDINATA TEMPORALMENTE A.S. 2015/ CLASSI: 1AE 1AM 1BI 1BM 1CM

VOLTMETRO/AMPEROMETRO DIGITALE (MK3980)

MANUALE PER L OPERATORE Versione software: 1.0

CURRICOLO MATEMATICA - CLASSE TERZA -

Copyright Arteco Motion Tech S.p.A. 2003

G S M C O M M A N D E R Duo

ROBOCUP JR ITALIA RIVA DEL GARDA

Curva caratteristica del transistor

Note su. Display a cristalli liquidi e il controller/driver HD44780

Autore: Bandiera Roberto 2016

MMDVM FOR DUMMIES display per mmdvm

Rappresentazione dell Informazione

SCART (Audio/Video) Le connessioni della SCART sono state modificate nel tempo man mano che si presentavano nuove necessità.

I grafici a torta. Laboratorio con EXCEL. 1 Come si costruisce un grafico a torta

Lez. 5 La Programmazione. Prof. Salvatore CUOMO

LA POSTA ELETTRONICA (a cura di Claudia Guanziroli e Maria Rita Tritonj)

WINKHOUSE Tutorial 7 Prospettiva Agenda

1 Multipli e sottomultipli. Divisibilità

Progetto per il corso di Microcontrollori: Gestore Ambientale

è importante farci conoscere e comunicare ai giovani la nostra passione e poi, si sa, da cosa nasce cosa... Premessa. Il Progetto.

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

Antonio Cianfrani. Standard Access Control List (ACL)

Programmazione di LCD su EasyPic5

Le misure di tempo e frequenza

CONOSCERE IL LINGUAGGIO DEL COMPUTER

FREQUENZIMETRO FQ-16S3-800

Secondo l architettura di Von Neumann il bus rappresenta il punto di interconnessione di tutti i componenti del calcolatore.

Il circuito qui presentato è stato

Guida pratica alla creazione di pagine web

REGISTRO DELLE IMPRESE

Approfondimento A3.1 Le linee di richiamo in ambiente autocad 1

Hardware. Utilizzo del Bluetooth

PRONTUARIO PER LA GESTIONE DEL SITO DELLE CIRCOSCRIZIONI

ISTITUTO DI ISTRUZIONE SUPERIORE J.C. MAXWELL Data: 24 /9 /2016 Pag. 1di 5. PROGRAMMAZIONE ANNUALE A.S. 2016/ 2017 MECCANICA e MECCATRONICA

CORSO DI FORMAZIONE DOCENTI DELLE SCUOLE PUBBLICHE A GESTIONE PRIVATA ECDL, LA PATENTE EUROPEA PER L USO DEL COMPUTER GUIDA SINTETICA

Mod DS A LBT 8563 SOFTWARE DI PROGRAMMAZIONE PER MODULO DI CHIAMATA E CENTRALINO 2VOICE

Sensori di Prossimità Guida Utente

Riassortimenti Web Guida Utente MARIA GRAZIA SEVERI

RISONANZA. Fig.1 Circuito RLC serie

Tipi di eccitazione del motore a corrente continua

Quarta Lezione: Disposizione Fisica degli apparati di rete

SCOMPOSIZIONE IN FATTORI PRIMI:

Misurare la resistenza elettrica e verifica della tolleranza

INTRODUZIONE A WORD CHE COS E WORD AVVIARE E CHIUDERE WORD INTERFACCIA UTENTE DI WORD

Moduli logici. Interfacciamento di dispositivi logici. Parametri statici e dinamici. Circuiti logici combinatori Circuiti logici sequenziali

Transcript:

Tutorial Display LCD e PIC Si fa presente per coloro che sono a "digiuno" con la programmazione dei PIC di leggersi il tutorial in questo link http://www.grix.it/viewer.php?page=429 Descrizione Questo tutorial vuol essere rivolto a tutti coloro abbiano necessità di utilizzare un dispaly LCD di tipo ALFANUMERICO con interfaccia Hitachi 44780 di tipo parallela. Senza entrare nei dettagli ma soffermandosi alla sola metodologia su come pilotare il display, prenderò come riferimento un display 20 caratteri a quattro linee. Fig.1 Come da figura 1 è riportato il disegno meccanico del display, utile per tutti coloro dovranno inserire il display in alloggiamenti con spazi prefissati.

Nella parte superiore notare i contatti elettrici che vanno da 1 a 16. La disposizione dei contatti varia a seconda della marca modello grandezza, ecc.ecc. Alcuni modelli hanno 14 contatti in quanto è assente la retroilluminazione, difatti con la retroilluminazione i contatti sono 16. AVVISO IMPORTANTE, LA DISPOSIZIONE DEI SEGNALI RISPETTO ALLA NUMERAZIONE PUO VARIARE DA MODELLO A MODELLO, DUNQUE PRIMA DI ESEGUIRE QUALSIASI COLLEGAMENTO CONTROLLARE IL DATASHEET DEL VOSTRO DISPLAY. Questa è la foto anteriore di un display 20x4 Questa è la foto posteriore di un display 20x4

Ora vediamo i segnali rispettivamente alla numerazione del display, di seguito riporto la tabella dei segnali. Vista la disposizione dei segnali del dispaly LCD possiamo procedere al collegamento con il PIC. Prendiamo tre tipi di schemi con altrettanti PIC diversi, per diversificare le possibilità di collegamento e di controllo.

Fig.2 Questo è un esempio con il PIC16F84, da notare che non tutti i pin del display sono collegati. Questa situazione avviene in quanto utilizziamo solo gli ultimi 4 bit da DB4..a..DB7. Difatti possiamo decidere di pilotarlo a 4 o 8 bit. Naturalmente pilotarlo a 8 bit significa impegnare 4 porte in più sul nostro PIC, ma avere più prestazioni dal nostro display. Per i nostri esperimenti sono sufficienti 4 bit. Il segnale R/W è messo direttamente a massa in quanto dobbiamo scrivere sul nostro display, ovvero inviare i dati dal PIC al display e visualizzarli e dunque per risparmiare un altra porta del PIC colleghiamo il R/W direttamente a massa. Il segnale CV (in realtà è il Vo, non capisco perché ha la sigla CV?!!) tramite il trimmer abbiamo la possibilità di regolarne il contrasto. Il display viene alimentato con i 5 volt, ora non resta che analizzare il firmware.

Prima di affrontare la programmazione bisogna sapere che esistono dei comandi con i quali possiamo spostarci nell area di visualizzazione, cancellare completamente lo schermo ecc.ecc. I comandi sono sotto riportati, LCDOut $fe,1 Cancella il display LCDOut $fe,2 Porta il cursore in alto a sinistra LCDOut $FE, $0C Spegne il cursore LCDOut $FE, $0E Trasforma il cursore in una linea bassa LCDOut $FE, $0F Il cursore lampeggia LCDOut $FE, $10 Muove il cursore di una posizione a sinistra LCDOut $FE, $14 Muove il cursore di una posizione a destra LCDOut $fe, $80 Porta il cursore alla prima linea di scrittura LCDOut $fe, $C0 Porta il cursore alla seconda linea di scrittura LCDOut $fe, $94 Porta il cursore alla terza linea di scrittura LCDOut $fe, $D4 Porta il cursore alla quarta linea di scrittura Naturalmente se abbiamo un display con una sola linea esempio un 16x1 i comandi per spostare il cursore dalla seconda in poi non sono da utilizzare. Con il PIC16F84 la gestione firmware è semplificata utilizzando lo schema in fig.2, difatti tutti i settaggi di controllo display sono sotto intesi (ci pensa il compilatore) e non vanno utilizzati, dunque arriviamo al nocciolo vediamo il codice sorgente. Si ricorda che il linguaggio utilizzato è il PICBASIC PRO. CODICE SORGENTE LCD_16F84

Come si nota sul codice sorgente ho creato delle sub routine da richiamare ogni qual volta devo spedire un comando al display, come per esempio cancellare il display dovrei scrivere ogni volta che necessita il comando LCDOut $fe,1. Per evitare di ricordarsi comandi assurdi gli stessi li inserisco dentro delle sub routine battezzandole con nomi più umani. Il comando per cancellare il display diventa GoSub LCD_CLS. Nessuno vieta di creare le sub routine con nomi italiani, esempio CANCELLA_LCD: LCDOut $fe,1 Return Ora, richiamare il comando per cancellare il dispaly sarà GoSub CANCELLA_LCD. Ecco il risultato nel display. Ora vediamo lo stesso pilotato da un PIC16F628

Praticamente identico al 16F84 difatti è pin compatibile, unica differenza che manca il circuito del quarzo in quanto il PIC16F628 ha al suo interno un oscillatore a 4Mhz, dunque possiamo evitare di inserire il quarzo. Cosi il firmware è praticamente identico cambiano alcuni comandi per la gestione del PIC in questione. CODICE SORGENTE LCD_16F628 Ora analiziamo la situazione con un PIC16F876.

Essendo un PIC completamente diverso dal 16F84 / 628 cambiano le connessioni sullo stesso pic. Come lo schema cambia in parte anche il firmware, difatti sono presenti i comandi per la gestione del display. CODICE SORGENTE LCD_16F876 Naturalmente se per esigenze di schema si ha la necessità di pilotare il bus con la porta C del PIC cambiero come segue DEFINE LCD_DREG PORTC 'bus dati sulla porta C Così per i restanti DEFINE che dovranno rispecchiare i collegamenti tra il PIC e il dispaly. Da notare che nello schema ho collegato il segnale R/W a massa ma l ho definito nel firmware, DEFINE LCD_RWREG DEFINE LCD_RWBIT PORTC 'definisco su quale porta è il R/W 2 'definisco il pin per il R/W Questo solo per far conoscere il comando, difatti se utilizzassimo il comando LCDIN il segnale R/W andrebbe collegato al PIC e definito.

Il resto del firmware è uguale ai precedenti. CONCLUSIONE Spero di aver dato chiarimenti su questo argomento, se ci sono dubbi potete contattarmi. Un saluto by Doberman (IS0GUP)