Newsgroup: it.hobby.elettronica.digitale
Titolo: HD44780 Die?

Salve, stavo provando a scrivere su un HD44780 compatibile con un pic
16f628a e ( Porcaccia miseria ) c'ero riuscito al primo colpo, ma siccome
mi prudono le mani, mi sono detto ... perchč non variare il contrasto!!
A quel punto sulla mia breadboard, ho messo un trimmer da 5kOhm, ma
evidentemente l'ho messo male, perchč variando la rotellina, il contrasto
non cambiava, in compenso il pic ha cominciato a bruciare e sul Display
sono comparse una serie di righe orizzontali fino a rimanere con tutta la
prima liea con i quadratini neri. Il Pic sembra non funzionare piů e il
Display non reagisce neanche con il vecchio 16F84a. E' possibile che per
quanto abbia sbagliato a mettere il trimmer, posso aver fatto tutti questi
danni? 
Il trimmer era tra la massa ed il piedito 3 del display.
C'č un modo per inviare comandi direttamente all'LCD senza controller?
Grazie
:-(
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 
Il collegamento del trimmer dipende dal tipo di display che utilizzi
in genere č con il centrale del trimmer sul 3 ed i laterali su vcc e gnd
ma devi verificare sul datasheet!
Inviare comandi direttamente al LCD non č una cosa semplice, 
oltrepassando gli ovvi problemi di collegamento, poi dovrai generale 
delle tensioni variabili a "gradino" a determinate frequenze per 
accenderlo..... vedi discussioni
precedenti  sul ng.
Come danni, mi sembra strano che mettendo il pin3 a massa (tramite il 
trimmer) si sia bruciato il pic e il display (anche considerando che al 
99% il pin 3 dovrebbe essere appunto il contrasto), forse hai fatto 
qualche altro corto....
Emanuele
-- 
*** YOUR ELECTRONICS OPEN SOURCE ***
http://dev.emcelettronica.com
;---------------------------------------------------------
Progetti Completi (Full Projects):
[IperKEY-ResKEY] Chiave elettronica a microcontrollore
(Microcontroller Electronics Key and key reader)
//TAGS:Pic, Eeprom, ADconverter, I2C
[IperCODE] Ricevitore RADIOCOMANDI e decodifiche
(Remote Control Receiver and decoder)
//TAGS:Pic, Radio control, routines, rolling code, UART, CCP1, LCD

 Emanuele
Ciao Emanuele, grazie per la risposta, forse il problema č proprio a causa
di un corto, io uso un alimentatore atx convertito ad alimentatore da
laboratorio per le mie prove. E' possibile che il corto abbia creato un
eccesso di corrente dannoso per il pic, comunque anch'io penso sia strano
che anche l'LCD si sia rovinato, ma non risponde neanche se uso il 16f84a.
Forse sbaglio programma, ma ne ho provati alcuni trovati su Internet e
nulla, hai per caso un prog funzionante da propormi cosě lo provo?
Grazie ancora ciao
Siro


 
Forse un eccesso di tensione ha bruciato tutti e 2 (pic e lcd)
L'assorbimento č talmente basso (senza retroilluminazione) che potresti, 
in futuro, collegare tra l'alimentatore (12V) e la tua applicazione un 7805.
Se ti aveva funzionato prima, sicuramente il programmino funziona.
Se vai nel mio blog (in firma) trovi sotto IperCODE un asm funzionante


Ciao Emanuele, ho scaricato il tuo pdf ora me lo guardo per bene, 
intanto volevo chiederti se posso postarti qui un codice dato per 
funzionante ( l'ho preso su 
http://www.areasx.com/index.php?D=1&page=articoli.php&id=217
 ), ma che 
non mi compila.
Ciao
Siro

_siro_ ha scritto:

Il corso č di Tanzilli
http://www.acmesystems.it/?id=217
e conoscendo Tanzilli posso dirti che č sicuramente funzionante
magari hai settato male qualcosa....


 
Si č lui, ma io compilo sotto Linux con piklab e l'errore č:
  error: multiple sections using address 0xc
e si riferisce a queste righe:
#Inizio
PROCESSOR 16F84
RADIX DEC
INCLUDE "P16F84.INC"
;Suppress MPASM warning message 302:
;"Register in operand not in bank 0. Ensure that bank bits are correct"
ERRORLEVEL -302
__CONFIG 3FF1H
;LCD Control lines
LCD_RS equ 2 ;Register Select
LCD_E equ 3 ;Enable
;LCD data line bus
LCD_DB4 equ 4 ;LCD data line DB4
LCD_DB5 equ 5 ;LCD data line DB5
LCD_DB6 equ 6 ;LCD data line DB6
LCD_DB7 equ 7 ;LCD data line DB7
->ORG 0CH
->tmpLcdRegister res 2
->msDelayCounter res 2
.
.
.

_siro_ ha scritto:

Non conosco questo compilatore, ma probabilmente si č creata una 
sovrascrittura tra direttiva ORG per la RAM (che tra l'altro io non ho 
mai usato)e direttiva ORG per la FLASH.
Prova ad usare MPLAB e vedi che succede
oppure togli la direttiva ORG OCh (riferita alla RAM)
mantenendo la ORG 00h per la flash che dovresti avere ,giusto?


Ho fatto così e compila, ma non so se è la stessa cosa:
                 ;ORG     0x0C
;tmpLcdRegister  RES     2
;msDelayCounter  RES     2
tmpLcdRegister  equ     0
msDelayCounter  equ     0
Ciao
Siro

ma se non sei sicuro del pic fagli un programmino di 20 righe per fare
lampeggiare un LED,no?

 
Fatto e non lampeggia, direi che è proprio morto!
Approposito non c'è un compilatore in C pure per il 628? Il picclite non 
lo supporta.
Ciao
Siro

 ha scritto nel messaggio 
news:mPUlh.137$0w1...@nntpserver.swip.net...


 Siro
NO!
RES 2 significa che stai riservando 2byte alla variabile (quindi 16bit)
invece cosi hai assegnato il registro 0 alla prima variabile per poi
ri-assegnarlo alla seconda variabile (ma sempre ad 8 bit)
quindi č un errore di assegnazione
Se usi MPLAB č tutto chiaro vedendo la RAM con le varie etichette
dopo la compilazione


 
Sorry! Sono + bravo in C :-P


Ottimo, ho usato le sue librerie sotto Linux.
Grazie

Ragazzi è incredibile, preso dalla testardagine, ho preso l'LCD e l'ho 
collegato alla porta parallela e con crystalcontrol ho verificato che 
FUNGE!!! E io che credevo di averlo bruciato.
Però c'ho rimesso un 16f628.
Mitico!! :-D