GLCD l'interfacciamento con i codici sorgente PIC16F876A assolutamente necessario!

  • Thread starter Manonsilvermount
  • Start date
M

Manonsilvermount

Guest
Hi guys,

Sono nuovo con GLCDs, ma aveva una buona esperienza con 16x2 LCD.Sto utilizzando PIC16F876A e sono stati collegati bus dati di GLCD a PORTB, 0-7 e bit di controllo di GLCD a PORTC, 0-5, regolazione del contrasto GLCD è impostato correttamente.

qualcuno può aiutarmi con il codice Assembly di interfacciarsi con esso.

Grazie ragazzi!

Fred

 
Ciao!

Avrei bisogno di ulteriori informazioni per aiutarti.
Che tipo di monitor LCD?(Lo so, grafico, ma voglio dire, qual è il controller, che cosa
è l'interfaccia (parallela? 3 SPI fili? 4 spi filo?).
So che l'interfaccia per display carattere non cambia molto, ma
per i display grafici, è estremamente variabile, a seconda del controller
maker.
Per esempio, abbiamo un piccolo display LCD a colori qui:
http://passworld.co.jp/ForumMSP430/viewtopic.php?f=2&t=156
per il quale il conducente è stato scritto.
Ora le specifiche sono leggermente cambiate.Il driver cambiato da Sitronix a
UltraChip.Il risultato è che il conducente ha dovuto essere completamente riscritto, non ci
non è nemmeno una singola riga dallo strato fisico, che possono essere riutilizzati.
Questo era il mio lavoro di oggi.

DoraAggiunto dopo 19 secondi:Ciao!

Avrei bisogno di ulteriori informazioni per aiutarti.
Che tipo di monitor LCD?(Lo so, grafico, ma voglio dire, qual è il controller, che cosa
è l'interfaccia (parallela? 3 SPI fili? 4 spi filo?).
So che l'interfaccia per display carattere non cambia molto, ma
per i display grafici, è estremamente variabile, a seconda del controller
maker.
Per esempio, abbiamo un piccolo display LCD a colori qui:
http://passworld.co.jp/ForumMSP430/viewtopic.php?f=2&t=156
per il quale il conducente è stato scritto.
Ora le specifiche sono leggermente cambiate.Il driver cambiato da Sitronix a
UltraChip.Il risultato è che il conducente ha dovuto essere completamente riscritto, non ci
non è nemmeno una singola riga dallo strato fisico, che possono essere riutilizzati.
Questo era il mio lavoro di oggi.

Dora

 
Ciao Dora!

grazie per la tua risposta.
E 'un TS12864A-2 con NT7107 controller parallelo con 8bit bus dati.Ho 2 schede (in allegato) per con set di istruzioni differernt, che mi ha sconcertato.

il tuo consiglio è molto apprezzato.
Fred
Ci dispiace, ma è necessario il login per visitare questo allegato

 
Doraemon ha scritto:

Ciao!Avrei bisogno di ulteriori informazioni per aiutarti.

Che tipo di monitor LCD?
(Lo so, grafico, ma voglio dire, qual è il controller, che cosa

è l'interfaccia (parallela? 3 SPI fili? 4 spi filo?).

So che l'interfaccia per display carattere non cambia molto, ma

per i display grafici, è estremamente variabile, a seconda del controller

maker.

Per esempio, abbiamo un piccolo display LCD a colori qui:

http://passworld.co.jp/ForumMSP430/viewtopic.php?f=2&t=156

per il quale il conducente è stato scritto.

Ora le specifiche sono leggermente cambiate.
Il driver cambiato da Sitronix a

UltraChip.
Il risultato è che il conducente ha dovuto essere completamente riscritto, non ci

non è nemmeno una singola riga dallo strato fisico, che possono essere riutilizzati.

Questo era il mio lavoro di oggi.Dora
Aggiunto dopo 19 secondi:
Ciao!Avrei bisogno di ulteriori informazioni per aiutarti.

Che tipo di monitor LCD?
(Lo so, grafico, ma voglio dire, qual è il controller, che cosa

è l'interfaccia (parallela? 3 SPI fili? 4 spi filo?).

So che l'interfaccia per display carattere non cambia molto, ma

per i display grafici, è estremamente variabile, a seconda del controller

maker.

Per esempio, abbiamo un piccolo display LCD a colori qui:

http://passworld.co.jp/ForumMSP430/viewtopic.php?f=2&t=156

per il quale il conducente è stato scritto.

Ora le specifiche sono leggermente cambiate.
Il driver cambiato da Sitronix a

UltraChip.
Il risultato è che il conducente ha dovuto essere completamente riscritto, non ci

non è nemmeno una singola riga dallo strato fisico, che possono essere riutilizzati.

Questo era il mio lavoro di oggi.Dora
 
Salve,

Guardando le due schede, sia rapidamente, le istruzioni sembrano gli stessi, a parte dove hanno recepito la R / W colonne.

Il file è in rinviati sulle manopole 18F assembler che dovrebbe darvi una buona idea di come utilizzare sul 16F.
È incluso anche un simulatore di file per mostrare in esecuzione.
Ci dispiace, ma è necessario il login per visitare questo allegato

 
Cari WP100,

che è stato tutto quello che dovevo, e la vostra assistenza è stata una fonte di luce nel buio.

many thanks!
Fred

 
hey amico I'm from Ecuador, non riesco a scaricare questo file, è possibile inviare un file?
la mia e mail è rochisjc (at) hotmail.com thank you

 
Salve,

I file scaricati solo ora ... ok?

Li ho mandati a voi attraverso il PMs su questo forum - è necessario un programma gratuito come WINRAR decomprimerli.

 
Quale versione di Proteus sono state utilizzate?Non funziona per me motivo ho versione precedente.Aggiunto dopo 3 ore 33 minuti:Oki got it a lavorare con Proteo.Tutte le info configurazione dei pin è in asm file per rendere lo schema.

Ma il mio programmatore PIC non vuole caricare il file HEX.Dà errore di FUSE, la linea 372: 0100010008F6

Ogni pensiero qual è il problema?

 
Salve,

Che programmatore pic stai usando?

L'assembler è codificato per il chip 18F4520 - stai usando che alcuni chip o altro?Questo uno. Hex file che ho usato per la demo, non è sicuro se è stato generato da tale assembler esatta / versione, ma molto vicino - fa carico nel tuo programmatore?
Ci dispiace, ma è necessario il login per visitare questo allegato

 
Non dà ancora errore simile.
Sto utilizzando Micropro.Penso che sia il problema della Micropro e questo microcontrollori della famiglia che non si adatta.C'è un po 'di parlare di questo nel forum kirsrus.Penso che ci fosse un programma di sostituzione per questo utilizzare il mio programmatore.Cercherò di trovarlo.

In realtà ho intenzione di adottare il codice di un chip in modo diverso in ogni caso si dovrebbe, t essere un problema.

E 'una realtà di facile lettura e ben scritto il codice.Grazie.

 
Salve,

Non ha familiarità con tale programmatore - kitsrus fare varie versioni?

Il codice che ho fatto solo programma in un chip 18F4520 - stai cercando di programmare in un chip 16F?

Se si vuole utilizzare uno un chip 16F c'è un sacco di modifiche indietro necessarie per farla funzionare.

 
Kitsrus è storia vecchia.non fanno alcun programmatori al giorno d'oggi.L'altro programma stavo parlando, non è stato sviluppato da kitsrus, ma da parte di terzi.L'ho trovato e si chiama Warpdiy.Questo sembra caricare l'hex bene, ma non ho chip per provarlo.
Sì ho scelto 4.520.

Ho provato a compilare il codice in 16f887 HEX file.ma mi ha dato una loooot di errori.Immagino che non sarà facile.

Ogni pensiero, quali sono le difficoltà principali?887 dovrebbe essere abbastanza simile al 4520?

 
Salve,

Beh, shoulld essere possibile, ma dato che sei un principiante credo che potrebbe essere un po 'più di quello che si può masticare per il momento.

Le cose principali da risolvere sono i Configs e gli oscillatori, le allocazioni di memoria RAM e tutti i comandi bancari devono essere aggiunti, più altre piccole cose.

L'altro problema è che se si vuole fare uso reale del GLCD poi si desidera memorizzare immagini bitmap e diversi tipi di carattere nella memoria del programma - questo è piuttosto limitata della gamma 16F - il 18F4520 ha un sacco, il 46LF20 ancora di più IIT più possibile eseguire in 3v3 che è buono per l'interfacciamento con i più moderni spi 3v3 glcds.

Potrebbe valere la pena pensare di aggiornare il proprio kit per un programmatore Pickit2, sarebbe consigliamo vivamente a vero e proprio uno Microchip, anche se altri cloni o fai da te sono in tutto - che coprirà tutte le chips è probabile che si desidera utilizzare per un tempo molto lungo e offre anche extra strumenti come debugger o Logic Analyzer, ecc

 
Juhuu ho fatto: D
I got it lavoro, devo ammettere, solo in Proteus finora.Spero che funzioni allo stesso modo in tempo reale anche.
I got it per l'inizializzazione, compilare e chiaro display per la visualizzazione anche 8x6 e 16x12 caratteri.
Ma ancora alcune questioni sollevate
Q1:
Come faccio a visualizzare i caratteri che non sono 8, 16, 24, 32 ...punti in alto?Si può scrivere in verticale 8 bit alla volta.Ad esempio voglio visualizzare un personaggio che è di 10 pixel di altezza quindi scrivere prima superiore 8 bit del carattere, per cui vi è più 2 righe di bit necessari per completare il carattere.Allora devo leggere 8 bit inferiori e aggiungere i 2 bit più bassi del carattere di questo valore e poi scrivere?
Non posso scrivere il più basso 2 bit perché alcuni di essi potrebbero essere utilizzati da alcuni personaggio di un altro sotto.giusto?

Q2:
Ci fu un freno connessione internet mentre stavo scrivendo il mio codice così ho dovuto capirlo me stesso.Una delle cose che non riuscivo a capire era come leggere le tabelle come questa:
Codice:

db 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 32 / ->

db 0x00, 0x00, 0x4F, 0x00, 0x00, 0x00, 0x00, 0x00, 33 / ->!

db 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 34 / -> "

db 0x00, 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, 0x00, 35 / -> #

db 0x00, 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, 0x00, 36 / -> $

.....
 
Salve,

Thats bene sapere che l'hai avuto di lavoro ok.

Per quanto riguarda la visualizzazione caratteri differenti di altezza e sì è possibile visualizzare qualsiasi dimensione, ma la sua a voi per controllare come si può vedere.

Che il codice demo era di mostrare che si può fare in assembler ed è stato mantenuto il più semplice possibile, se si vuole fare altre cose allora si ha realmente bisogno di capire come tutto il codice lavora insieme, allora è possibile modificare le cose come vuoi .

Sì, il 16F chip può guidare la glcds, ma ci vorrà un sacco di lavoro per convertire il codice, più sarà presto iniziare ad avere un sacco di problemi di paging, perché la routine GLCD con tutti i suoi caratteri e bitmap usare una grande quantità di memoria -- la ragione principale per la 18F chip sono stati utilizzati.

Il 16Fs supporta anche le direttive db, vedere l'aiuto in MPLAB, sezione MPASM per i dettagli.

 

Welcome to EDABoard.com

Sponsor

Back
Top