Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 13 aprile 07, 10:27   #1 (permalink)  Top
User
 
Data registr.: 13-04-2007
Messaggi: 6
16f876 e display lcd (GDM1602K)

Salve,
ho acquistato di recente il display in argomento (2x16) nella speranza di poterlo gestire tramite un pic 16f876.

Premetto che ho utilizzato come esempio il progetto ed il software in assembler (gestione display lcd) proposto da Tanzilli, effettuando le opportune modifiche.

I contatti sono i seguenti:

Rb2 = RS;
Rb3 = E;
Rb4 = db4;
Rb5 = db5;
Rb6 = db6;
Rb7 = db7;

LCD => db0, db1, db2, db3, R/W = massa


Ho, inoltre, programmato il pic utilizzando ic-prog e facendo attenzione a disattivare LVP.

I risultati da me ottenuti non sono eccezionali nel senso che riesco correttamente a visualizzare soltanto alcuni caratteri ascii quali ad esempio: A, B, C, D, E, F, G, H, I, J, K, L, M, N, O ovverosia quelli esattamente corrispondenti alla colonna "0100" della rispettiva tabella. Per il resto è una catastrofe.

Qualcuno di voi ha mai utilizzato questi LCD?
E' possibile che le temporizzazioni previste dal Tanzilli non siano perfettamente compatibili al display da me utilizzato?
dove sbaglio?
angelole non è collegato   Rispondi citando
Vecchio 13 aprile 07, 18:39   #2 (permalink)  Top
User
 
L'avatar di rivp6
 
Data registr.: 11-10-2004
Residenza: out of Verona
Messaggi: 573
se mi dici la frequenza del quarzo ti mando un hex di prova
rivp6 non è collegato   Rispondi citando
Vecchio 13 aprile 07, 19:34   #3 (permalink)  Top
User
 
Data registr.: 13-04-2007
Messaggi: 6
La frequenza del quarzo da me utilizzato è 4 Mhz.

il mio indirizzo e-mail dove potrai inviarmi il file è: angelole@libero.it

Grazie

Aspetto tue notizie
angelole non è collegato   Rispondi citando
Vecchio 13 aprile 07, 21:38   #4 (permalink)  Top
User
 
L'avatar di Naraj
 
Data registr.: 25-07-2004
Residenza: Trieste
Messaggi: 5.664
Citazione:
Originalmente inviato da angelole
Salve,
ho acquistato di recente il display in argomento (2x16) nella speranza di poterlo gestire tramite un pic 16f876.

Premetto che ho utilizzato come esempio il progetto ed il software in assembler (gestione display lcd) proposto da Tanzilli, effettuando le opportune modifiche.

I contatti sono i seguenti:

Rb2 = RS;
Rb3 = E;
Rb4 = db4;
Rb5 = db5;
Rb6 = db6;
Rb7 = db7;

LCD => db0, db1, db2, db3, R/W = massa


Ho, inoltre, programmato il pic utilizzando ic-prog e facendo attenzione a disattivare LVP.

I risultati da me ottenuti non sono eccezionali nel senso che riesco correttamente a visualizzare soltanto alcuni caratteri ascii quali ad esempio: A, B, C, D, E, F, G, H, I, J, K, L, M, N, O ovverosia quelli esattamente corrispondenti alla colonna "0100" della rispettiva tabella. Per il resto è una catastrofe.

Qualcuno di voi ha mai utilizzato questi LCD?
E' possibile che le temporizzazioni previste dal Tanzilli non siano perfettamente compatibili al display da me utilizzato?
dove sbaglio?
Mi sembra di capire che usi l'invio dei dati al display con 4 bit alla volta. Se è così, non si dovrebbe utilizzare nel display i pin D4-D5-D6-D7 ?

Naraj
Naraj non è collegato   Rispondi citando
Vecchio 13 aprile 07, 21:55   #5 (permalink)  Top
User
 
Data registr.: 13-04-2007
Messaggi: 6
Si, utilizzo quattro bit per volta attraverso db4, db5, db6 e db7 del display.
Questo dovrebbe essere corretto. non credo che l'errore sia li.
angelole non è collegato   Rispondi citando
Vecchio 14 aprile 07, 22:00   #6 (permalink)  Top
User
 
L'avatar di rivp6
 
Data registr.: 11-10-2004
Residenza: out of Verona
Messaggi: 573
ecco qua

int i ;
char Text[14] ;

void InitHW(void)
{
TRISA=0xFF ;
TRISB=0x00 ;
TRISC=0x00 ;
}

void main(void)
{
InitHW() ;
Delay_ms(500) ;
Lcd_Init(&PORT ; // Initialize LCD connected to PORTB
Lcd_Cmd(Lcd_CLEAR) ; // Clear display
Lcd_Cmd(Lcd_CURSOR_OFF) ; // Turn cursor off
Lcd_Out(1, 1, "ABCDEFGHILMNOPQRS") ; // Print text to LCD, 2nd row, 1st column
i=0 ;
for (;;)
{
Delay_ms(500) ;
Lcd_Out(2,1,"Nr. ") ;
Lcd_Out(2,5,Text) ;
IntToStr(i,Text);
Lcd_Out(2,5,Text) ;
i++ ;
}
}
Files allegati
Tipo file: zip TestLCD876 4MHz.zip‎ (1,4 KB, 282 visite)
rivp6 non è collegato   Rispondi citando
Vecchio 15 aprile 07, 10:05   #7 (permalink)  Top
User
 
Data registr.: 13-04-2007
Messaggi: 6
Sei un grande, non ho altre parole.
Funziona perfettamente.

Purtroppo non conosco il linguaggio C, finora ho programmato in assembler!
Per cui ti chiedo delle informazioni circa le temporizzazioni da te utilizzate in quanto ho la vaga impressione che ci sia qualcosa che non va nel mio codice.


Non ho potuto fare a meno di notare come in poche righe di codice C sei riuscito a fare ciò che in assembler farei con almeno 10 volte tanto!!!

Mi sa che passerò anch'io al C. Al proposito dove posso trovare un buon compilatore per il 16F876 e dei tutorial ???

Grazie.
angelole non è collegato   Rispondi citando
Rispondi

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
Display Royal Evo fa le bizze Claudiopapi Radiocomandi 3 21 giugno 07 16:10
Pic 16F876 con display LCD nunzio88 Circuiti Elettronici 4 19 febbraio 07 23:28
PIC 16f876 ??????? manulele84 Circuiti Elettronici 9 11 agosto 06 12:56
voltmetro con display Melquattro Circuiti Elettronici 9 21 giugno 06 19:27
Display LCD SoldatoSemplice Circuiti Elettronici 5 15 maggio 06 23:21



Tutti gli orari sono GMT +2. Adesso sono le 12:37.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002