Sari la conținut
ELFORUM - Forumul electronistilor

fmetru cu 16F84


Bamse

Postări Recomandate

  • Răspunsuri 49
  • Creat
  • Ultimul Răspuns

Top autori în acest subiect

  • vlad_2770

    16

  • Bamse

    16

  • cristianp

    3

  • Zerro

    2

Top autori în acest subiect

Dupa ceea ce ai scris tu in mesajul tau se pare ca pic-ul nu-ti merge deloc!!! Deci ori circuitul prezinta defecte fizice ori din programare ai uitat sa setezi XT la oscilator.In pagina web este scris:

DO NOT FORGET TO SET THE WatchDog TIMER TO OFF AND THE OSC TO XT

Nu stiu cum arata interfata la programatorul tau (la progpic nu aveai posibilitatea de a alege XT pentru oscilator dar la ICPROG ai posibilitatea) dar daca ai niste optiuni vezi cum sunt setate pentru ca oscilatorul sa fie XT.Ti-am atasat si a doua varianta de asm. Am facut-o pentru 16F84A cu toate ca merge si un hex pentru 16F84. Eu am adaugat cuvintul de configurare ca sa stie ca oscilatorul este extern si este cuartz. Dar daca programatorul tau are optiune sa setezi tu cuartul si tu nu il setezi pe cel care trebuie tot nu o sa-ti mearga. Am avut un caz cind un utilizator de ICPROG uita sa bifeze XT pentru cuartz si normal ca nu-i mergea montajul.
Link spre comentariu

A ca am uitat si niic nu ma mai uit. Ce fel de cuartz folosesti ? La ce frecventza? Sa fie acelasi cuartz ca cel din schema de acolo!!! Altfel iar nu iti va merge!!!

Link spre comentariu

controler-ul lcd-ului este compatibil

Compatibil cu ce sau cu cine? Orice controller de LCD este compatibil cu orice PIC!!! Deci fiecare controller de LCD are niste "parametrii" (adica niste timpi si secvente de initializare) care difera un pic de la o firma la alta dar o data ce sunt cunoscute se face programul din PIC sa respecte acesti parametri. Deci nu se poate vorbi de incompatibilitate.
Link spre comentariu

era vorba ca cele 3 componente (pic-ul, LCD-ul si softul) sa respecte specificatiile din schema ale autorului (softul a fost creat pentru respectivul pic sa comunice cu respectivul LCD)... nu era vorba de o incompatibilitate hardware intre pic si LCD ...

Link spre comentariu

Daca este sa fiu mai exact pot spune urmatoarea chestie: secventa de initializare este la fel la marea majoritate a LCD-urile, ce variaza la ele sunt niste delay-uri, dar cei care scriu frecvent programe pentru picuri ca sa nu mai modifice rutinele baga niste timpi sufiecienti de mari ca sa acopere si cel mai mare delay de la aceste LCD-uri. Problema este ca timpul scris in program sa fie mai mare sau egal cu cel din specificatiile LCD-ului. Nu m-am uitat bine pe acea pagina de web dar banuiesc ca daca tipul nu a scris un model de LCD deja a facut pogramul cu timpi acoperitori.

Link spre comentariu

Multumesc pentru raspunsuri !!! :rock:

... se pare ca nu ar fi diferente antre 84A si 84 din cate am vazut an ce a trimis schnapy (doar cate ceva la electric)

... vlad_2770 Q montat este de 4MHz ... am ancercat si altele apropiate de valoare ex 4,12..Mhz si sub val de 4 adic 3,7..Mhz si tot asa face am verificat la pini D0 - D7 cu osciloscop si am "dinti de fierastrau" :yawinkle:

in ce priveste interfata programatorului am atasat mai jos

iar la afisaj nu specifica ceva clar..un anume model ci doar 16x1

eu am bagat un DEM16101 la care am vazut ca are la fel codurile pentru caractere ca si la alte afisoare LCD chiar daca erau 16x2

..schema nu-i foarte coplexa asa ca am verificat toate traseele de cablaj si nu sunt antreruperi nici scurt si corespunde cu schema electrica

 

totusi nu o fi codul de vina ?! :snakeman: ori am facut eu greseali la programator in setari ?

vlad_2770 incarc codul ce ai dat tu an controler si verific ?!

arunca o privire pe interfata te rog si zi daca am facut bine setarile

Link spre comentariu

cuartz-ul sa ramana ala de 4MHz!! Daca tu ai verifica si ai pe pinii de date de la lcd ceva insemana ca da pic-ul iti merge si undeva in cod nu ti se face initializarea LCD-ului. Ai pdf-ul de la LCD? sa vedem unde este problema.

Link spre comentariu

LCD-ul tau este cu 2 linii sau cu o singura linie? Codul care ti l-am trimis mai sus nu va merge. Codul este scris pentru LCD cu controller HD44780 si tu ai alt controller. Ca ma enerveaza este ca acolo in cod apare la initializare: movlw 0x38 ;initialize display movwf port_bsi asta este cuvint de intializare pentru LCD cu doua linii si parca in poza era un LCD cu o singura linie. Incerc sa iti fac programul ca sa se initializeze LCD-ul. LCD-ul tau am vazut ca a re acelasi controller ca si cele de la comet. Deci ai sa stii pe viitor de unde sa iti mai iei daca mai vrei.

Link spre comentariu

Creează un cont sau autentifică-te pentru a adăuga comentariu

Trebuie să fi un membru pentru a putea lăsa un comentariu.

Creează un cont

Înregistrează-te pentru un nou cont în comunitatea nostră. Este simplu!

Înregistrează un nou cont

Autentificare

Ai deja un cont? Autentifică-te aici.

Autentifică-te acum



×
×
  • Creează nouă...

Informații Importante

Am plasat cookie-uri pe dispozitivul tău pentru a îmbunătății navigarea pe acest site. Poți modifica setările cookie, altfel considerăm că ești de acord să continui.Termeni de Utilizare si Ghidări