Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

problema con LCD e PIC16F628A

Raccolta di codici sorgenti

Moderatore: Foto UtentePaolino

0
voti

[1] problema con LCD e PIC16F628A

Messaggioda Foto Utentenicolas97 » 21 mar 2015, 20:09

Buona sera,
mi sono da poco cimentato in un nuovo progetto facente uso di display LCD e PIC16F88, solamente che quando alimento il circuito non viene visualizzato nulla sul display. Le librerie che uso per LCD le ho già testate con PIC16F628A e PIC16F877 e funziona tutto perfettamente! nell'88 ho disattivato comparatori anche se i pin dei dati sono collegati alla PORTB del PIC... Non saprei quale sia il problema visto che lo stesso codice su 628A e 877 correttamente, qualcuno ha qualche idea o soluzione da propormi?
Grazie.

Nicolas
Avatar utente
Foto Utentenicolas97
5 2
 
Messaggi: 26
Iscritto il: 3 nov 2013, 10:38

0
voti

[2] Re: problema con LCD e PIC16F628A

Messaggioda Foto UtenteWALTERmwp » 21 mar 2015, 20:38

Ciao Foto Utentenicolas97, la domanda che poni deve essere accompagnata da qualche contenuto altrimenti, se tu pensi (magari a ragione), che tutto sia a posto, pur non funzionando, come è possibile che noi, da "qui", si possa portare un contributo.
Con questi presupposti potrebbe essere qualsiasi cosa.

Allora, per essere propositivi, ti suggerirei, presupponendo l'integrità del PIC, di "ri-controllare":
i) i collegamenti previsti,
ii) che, la eventuale "define" identificativa del micro sia di quello in uso (e non ve ne sia una seconda inclusa da qualche altra parte),
iii) che, all'interno del codice, tu faccia riferimento ai pin(s) connessi,
iv) che, non vi siano altre periferiche del micro che possano precludere la corretta gestione delle uscite,
v) che, i dati (e i comandi) da inviare al micro vengano presi la dove si trovano o che le funzioni relative vengano eseguite,
vi) ...

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8986
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[3] Re: problema con LCD e PIC16F628A

Messaggioda Foto Utentegiovannispina » 21 mar 2015, 22:23

Se lo stesso codice in altri microcontrollori funzionava allora è probabile che ti sei dimenticato di settare i pin digitali anziché analogici. Consulta il datasheet.
Avatar utente
Foto Utentegiovannispina
126 1 3
 
Messaggi: 43
Iscritto il: 27 lug 2013, 12:31

0
voti

[4] Re: problema con LCD e PIC16F88

Messaggioda Foto Utentenicolas97 » 22 mar 2015, 1:10

Grazie per le risposte. Allora per quanto riguarda l'integrità e il collegamento dei pin questi sono stati già controllati più volte e risultano essere corretti sia da schema che da codice (cioè con assegnazione dei pin del display a quelli del PIC) in allegato vi invio i sorgenti del progetto che indubbiamente possono aiutare.
Invio inoltre i file dello schema e PCB in formato Eagle.
Grazie per le riposte.
Allegati
Vasca_incisione.zip
File dello schema e PCB in formato Eagle
(443.08 KiB) Scaricato 127 volte
Vasca_Incisione.X.zip
File MPLAB X compilato con HI-TECH 9.83
(100.86 KiB) Scaricato 205 volte
Avatar utente
Foto Utentenicolas97
5 2
 
Messaggi: 26
Iscritto il: 3 nov 2013, 10:38

0
voti

[5] Re: problema con LCD e PIC16F628A

Messaggioda Foto UtenteWALTERmwp » 25 mar 2015, 23:41

Qui, con il PIC16F88 utilizzi un clock di base da 8 MHz.
Sarebbe utile sapere, intanto, nelle precedenti esperienze (PIC16F628A e PIC16F877) qual era la frequenza.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8986
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[6] Re: problema con LCD e PIC16F628A

Messaggioda Foto Utentenicolas97 » 28 mar 2015, 20:11

Per quanto riguarda il clock sul 628 era lo stesso dell'88 l'LCD è sempre lo stesso
Avatar utente
Foto Utentenicolas97
5 2
 
Messaggi: 26
Iscritto il: 3 nov 2013, 10:38

0
voti

[7] Re: problema con LCD e PIC16F628A

Messaggioda Foto UtenteWALTERmwp » 28 mar 2015, 20:30

Hai caratterizzato in modo preciso la discussione con quanto scritto in apertura: certezza di una corretta gestione.
Questo, di conseguenza, può condizionare gli interventi di altri utenti: i miei certamente.
Allora, se non lo hai fatto, ti suggerisco di ricontrollare i punti elencati nel Post [2].
Se il codice è "quello che funziona", non ho motivo di andarlo a controllare; proprio per questo la differenza la potrebbe fare l'hardware, micro compreso, a meno che tu non abbia implementato le parti del programma in modo "scoordinato" rispetto alle precedenti esperienze.
Quindi ri-controlla l'ordine delle chiamate delle funzioni per la gestione del display, sia in fase di inizializzazione che nella gestione run-time.
Tornando all'hardware, se le porte impiegate per la gestione dell'LCD sono pilotate correttamente e in assenza di conflitti (ri-controlla il datasheet), allora potrebbe esserci un problema nel collegamento dell'LCD stesso ( ... sei certo, per altro, che funzioni ? Ne hai un altro in alternativa ? L'alimentazione è corretta ? ... ).
Se non visualizzi nulla è possibile che tu non lo abbia inizializzato correttamente oppure, pur avendolo inizializzato correttamente non accedi più allo stesso.
Spesso, ad un primo controllo, sfuggono errori anche elementari.

Saluti
W - U.H.F.
Avatar utente
Foto UtenteWALTERmwp
30,2k 4 8 13
G.Master EY
G.Master EY
 
Messaggi: 8986
Iscritto il: 17 lug 2010, 18:42
Località: le 4 del mattino

0
voti

[8] Re: problema con LCD e PIC16F628A

Messaggioda Foto Utentenicolas97 » 29 mar 2015, 9:11

Grazie mille per la risposta!! Allora per quanto riguarda l'inizializzazione è la medesima del progetto del 628 ho letto tutto il datasheet per disattivare le periferiche che non mi servono e/o penso possano causare problemi ai pin a cui è configurato il display. Ho inoltre controllato i collegamenti sul PCB al display e funzionano correttamente perché con un altro tipo di PIC pin compatibile lo stesso codice funziona perfettamente, però avrei bisogno di utilizzare l'88. Disponendo di un oscilloscopio nei prossimi giorni controllo se sui pin dei dati dell'lcd arrivano i segnali oppure no. Come ultima cosa ho sentito con un mio vecchio prof e lui sostiene che i delay nell'88 possono non essere precisi per l'LCD in questione è questo causi la non corretta inizializzazione del display... Se questa fosse una causa, come potrei risolvere?
Grazie della disponibilità.
Avatar utente
Foto Utentenicolas97
5 2
 
Messaggi: 26
Iscritto il: 3 nov 2013, 10:38


Torna a Firmware e programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 21 ospiti