www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 

PIC16F1933 in njegov LCD driver

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Neper
Član
Član



Pridružen-a: Sob 11 Apr 2009 9:51
Prispevkov: 83
Aktiv.: 0.42
Kraj: Ljubljana

PrispevekObjavljeno: Ned Apr 04, 2010 1:09 pm    Naslov sporočila:  PIC16F1933 in njegov LCD driver Odgovori s citatom

Lep pozdrav!

Že 3 dni se ukvarjam z omenjenim PICem (19F1933) in ga poizkušam usposobiti za upravljanje LCD prikazovalnika (LCD-S2X1C50TR). Slednji mora biti krmiljen v static načinu. Moj problem je prikazan na priloženih slikah. Na izhodnem skupnem pinu (COM1 v mojem primeru) dobim lep pravokotni signal z amplitudo VDD. Na izhodnem pinu, ki bo krmilil segment z ugasnjenim pixlom je signal enak (torej napetost med segmentom in COM1 bo vedno 0V, kot mora biti). Problem pa je pri pinih, ki bodo krmilili prižgane segmente. Tam namreč ne dobim zgolj invertiranega signala COM1 ampak še oslabljenega. To pa pomeni, da bo na teh segmentih na LCDju vedno prisotna neka DC komponenta, kar pa bo uničevalo prikazovalnik.

Kodo za inicializacijo LCDja, z datasheetom v roki, pregledujem že zadnje 3 dni vendar ne najdem napake. Če stvar pravilno razumem, bi moral namreč na pinih, ki bodo krmilili prižgane pixle dobiti le invertiran COM1 signal.

Prosim vse, še posebej tiste ,ki ste že kdaj uporabljali tale PIC, če bi lahko na hitro preleteli kodo in me opozorili na napako. Veščim uporabnikom bo najbrž to vzelo bolj malo časa. Prilagam tudi kodo programa.

Za odgovore pa že vnaprej hvala!
LP!


EDIT: Poizkusil sem še z drugim (enakim) čipom in tokrat je napetost na pinih, ki krmilijo prižgan pixel 2.2Vpp. Pri prvem čipu je bilo 1.44Vpp. Sumljivo Confused



LCD-pixel off.jpeg
 Opis:
 Velikost datoteke:  23.96 KB
 Pogledana:  1 krat

LCD-pixel off.jpeg



LCD-pixel on.jpeg
 Opis:
 Velikost datoteke:  24.59 KB
 Pogledana:  2 krat

LCD-pixel on.jpeg



LCD.txt
 Opis:

Download
 Ime datoteke:  LCD.txt
 Velikost datoteke:  1.86 KB
 Downloadano:  9 krat

Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bungee
Član
Član



Pridružen-a: Pon 07 Mar 2005 18:49
Prispevkov: 1479
Aktiv.: 6.24
Kraj: Ljubljana

PrispevekObjavljeno: Ned Apr 04, 2010 11:57 pm    Naslov sporočila:   Odgovori s citatom

Preveri predvsem nastavitve:

Citiram:
REGISTER 26-3:LCDREF: LCD REFERENCE VOLTAGE CONTROL REGISTER
R/W-0/0R/W-0/0R/W-0/0U-0R/W-0/0R/W-0/0R/W-0/0U-0
LCDIRELCDIRSLCDIRI —VLCD3PEVLCD2PEVLCD1PE —
bit 7 bit 0
Legend:
R = Readable bitW = Writable bitU = Unimplemented bit, read as ‘0’
u = Bit is unchangedx = Bit is unknown-n/n = Value at POR and BOR/Value at all other Resets
‘1’ = Bit is set‘0’ = Bit is clearedC = Only clearable bit
bit 7 LCDIRE: LCD Internal Reference Enable bit
1 =Internal LCD Reference is enabled and connected to the Internal Contrast Control circuit
0 =Internal LCD Reference is disabled
bit 6 LCDIRS: LCD Internal Reference Source bit
If LCDIRE = 1:
0 =Internal LCD Contrast Control is powered by VDD
1 =Internal LCD Contrast Control is powered by a 3.072V output of the FVR.
If LCDIRE= 0:
Internal LCD Contrast Control is unconnected. LCD bandgap buffer is disabled.
bit 5 LCDIRI: LCD Internal Reference Ladder Idle Enable bit
Allows the Internal FVR buffer to shut down when the LCD Reference Ladder is in power mode ‘B’
1 =When the LCD Reference Ladder is in power mode ‘B’, the LCD Internal FVR buffer is disabled.
0 =The LCD Internal FVR Buffer ignores the LCD Reference Ladder Power mode.
bit 4 Unimplemented: Read as ‘0’
bit 3 VLCD3PE: VLCD3 Pin Enable bit
1 =The VLCD3 pin is connected to the internal bias voltage LCDBIAS3(1)
0 =The VLCD3 pin is not connected
bit 2 VLCD2PE: VLCD2 Pin Enable bit
1 =The VLCD2 pin is connected to the internal bias voltage LCDBIAS2(1)
0 =The VLCD2 pin is not connected
bit 1 VLCD1PE: VLCD1 Pin Enable bit
1 =The VLCD1 pin is connected to the internal bias voltage LCDBIAS1(1)
0 =The VLCD1 pin is not connected
bit 0 Unimplemented: Read as ‘0’
Note1: Normal pin controls of TRISx and ANSELx are unaffected.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Neper
Član
Član



Pridružen-a: Sob 11 Apr 2009 9:51
Prispevkov: 83
Aktiv.: 0.42
Kraj: Ljubljana

PrispevekObjavljeno: Pon Apr 05, 2010 10:09 am    Naslov sporočila:   Odgovori s citatom

LCDIRE imam postavljen, saj če se igram z kontrastom (spreminjam LCDCST<2:0>), se nivo signala, ki naj bi krmilil prižgane pixle, spreminja. Poleg tega, če bi bil notranji delilnik izklopljen (torej če bi imel LCDIRE na 0), ne bi na izhodu (tako COM kot SEGx) dobil nobenega signala. Problem je, da kljub spreminjanju kontrasta COM signal ostaja enak. Če zadevo prav razumem, bi se morala z spreminjanjem kontrasta spreminjati tudi amplituda COM signala. Signali za krmiljenje ugasnjenih pixlov bi morali biti enaki COM signalu, signali za krmiljenje prižganih pa zgolj invertiran COM (oz. za 180 stopinj zamaknjen).
V mojem primeru pa se zdi, da je COM signal vedo vezan na napajanje (torej zaobide sprmenljiv upor, ki nastavlja kontrast). Kot da nekje manjka nastavitev, da naj se COM signal krmili iz vrha notranjega delilnika (reference ladder).

LCDIRS pa imam na 0 (torej notranji delilnik napaja VDD), ker čip napajam z 3.3V, kar je pribljižno enako kot bi dobil iz FVR bufferja.

Pa še tole, samo da preverim: Signal, ki ga dobim je definitivno napačen, je res? Na LCD pixlih, ki bodo prižgani bo vedno neka DC napetost, kar je narobe, je tako?

Tole so sicer bolj blodnje obupanega moža vendar ali je možno, da ima modul napako? Če sem prav zasledil, je PIC16F1933 na tržišču "šele" od junija lansko leto. Na internetu pa tudi ni o njem kaj dosti napisanega. Projekta z LCD modulom še nisem zasledil.

Ali pa si napačno predstavljam kakšen mora biti izhodni signal? Čeprav v poglavju 21.9 - LCD Waveform Generation na str. 258 v datasheetu, so signali narisani in tisti za prižgan pixel (SEG0-v datasheetu) niso takšni kot sem jih pripel zgoraj.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
bungee
Član
Član



Pridružen-a: Pon 07 Mar 2005 18:49
Prispevkov: 1479
Aktiv.: 6.24
Kraj: Ljubljana

PrispevekObjavljeno: Pon Apr 05, 2010 5:06 pm    Naslov sporočila:   Odgovori s citatom

Tule ima microchip napisano veliko o LCD-jih ... mogoče kaj pomaga .... KLIK

Našel sem pa še power meter aplikacijo ki uporablja PIC16F917, ki ima tudi LCD modul. V tem AN-ju je tudi source, če ti kaj pomaga. KLIK
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
Neper
Član
Član



Pridružen-a: Sob 11 Apr 2009 9:51
Prispevkov: 83
Aktiv.: 0.42
Kraj: Ljubljana

PrispevekObjavljeno: Tor Apr 06, 2010 6:31 pm    Naslov sporočila:   Odgovori s citatom

Bungee, najlepša hvala za tale zadnji link. PIC je sicer drug (največja razlika glede LCD modula je, da nima notranjega uporovnega delilnika, ampak ga je potrebno dodati externo) vendar kolikor toliko podoben.
Pomembna razlika med mojim programom in tistim iz zgornjega linka je inicializacija AD pinov. Sicer mislim, da bi naj bili v originalu analogni pini izklopljeni, vendar pa velja poizkusiti. Pin za skupni signal (COM1) v mojem primeru ima namreč lahko tudi funkcijo analognega vhoda. Morda ga to kaj moti.

Druga zadeva, ki bi jo bilo vredno preizkusiti pa je izklop notranjih pull-up uporov na portu B, kjer se nahaja tudi COM0 pin.

Malo sicer dvomim v uspeh omenjenih poizkusov, saj bi to verjetno pisalo v datasheetu v poglavju o uporabi LCD modula. Vendar poizkusiti ni greh.

Prizkusil in poročal bom čez vikend, ko bo čas.
Če pa ima kdo še kakšno idejo pa jo bom seveda zelo vesel.

LP
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Microchip PIC Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 496 dni


Powered by phpBB © 2001, 2005 phpBB Group