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 

CodeVision, mega16, LCD?
Pojdi na stran Prejšnja  1, 2
 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> Osnove programiranja AVR-jev
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
Goran_V
Neznanec
Neznanec



Pridružen-a: Sre 03 Dec 2008 18:28
Prispevkov: 2
Aktiv.: 0.01

PrispevekObjavljeno: Sre Dec 03, 2008 6:46 pm    Naslov sporočila:   Odgovori s citatom

Pozdravljen Noordung! Imam enak problem z lcdjem kot si ga imel ti, zato bi te prosil, če lahko malo bolj natačno poveš kaj in kako si spremenil da ti je stvar uspelo "prepričat" da deluje Very Happy Uporabljam pa prav tako ploščo EasyAVR5 in pa ATMEGA 8515....

P.S. sem začetnik Laughing
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Noordung
Član
Član



Pridružen-a: Tor 22 Jan 2008 18:07
Prispevkov: 23
Aktiv.: 0.11
Kraj: Škofja Loka

PrispevekObjavljeno: Čet Dec 11, 2008 1:45 am    Naslov sporočila:   Odgovori s citatom

No pa dajmo povedati malo drugače...

Plata Easy AVR5 natančneje letvica za priklop lcdja je narejena tako, da gredo fizične povezave iz porta A do omenjene letvice kamor namestimo display.

Pametno je prej pogledati, kje na LCDju so biti, ki jih potrebujemo: R/W,RS, RD,E in štirje DATA biti( to je v datasheetu od hitaci kontrolerja, ki je del lcdja, s katerim mi komuniciramo s to knjižnico) naj opozorim, da to velja za knjižnico ki je integrirana v CVAvr-ju

Odpreš lcd.c in popraviš bite tukaj takole:

tole je bilo prej...
#asm
.equ __lcd_direction=__lcd_port-1
.equ __lcd_pin=__lcd_port-2
.equ __lcd_rs=0
.equ __lcd_rd=1
.equ __lcd_enable=2
.equ __lcd_busy_flag=7
#endasm

tole je pa potem, ko si popravil...
#asm
.equ __lcd_direction=__lcd_port-1
.equ __lcd_pin=__lcd_port-2
.equ __lcd_rs=2
.equ __lcd_rd=1
.equ __lcd_enable=3
.equ __lcd_busy_flag=7
#endasm

ne pozabiti, da moraš vključiti na začetku še tole predeninkludaš knjižnice(oziroma čarovnik to naredi sam):
#asm
.equ __lcd_port=0x18 (to je za port b, ti vpiši naslov porta a...datasheet mega16)
#endasm

potem šele inkludaš knjižnice

#include <lcd.h>

Sedaj pa vzemi kos žice in naredi povezavo iz R/W bita na LCDju na drugi bit porta A...pazi to je PORTA.1 in ne PORTA.0, tukaj začnemo šteti s 0!

To narediš zato, ker to niso naredili strokovnjaki, ki so zgradili to plato. Knjižnica pa je napisana tako, da NUJNO RABI podatek R/W bita, to pa zato, da ve kdaj mega 16 lahko pošlje nasleden podatek v buffer lcdja. Na plati pa je ta bit kar povezan na zemlo...tako, kontroler ne dobi povratne informacije, da lahko pošlje nasleden bajt informacij...se pravi čaka R/W bit da se postavi na 1, to se pa ne zgodi brez tiste prevezave.

Vse to bi delovalo lepo in prav, če bi bila knjižnica napisana s fiksnimi delayi recimo 50ms med vsakim oddajanjem informacij. Vendar pa je knjižnica, ki jo uporabljamo tako napredna in optimizirana, da dela kar se da hitro. Ta problem se ne pojavi v bascomu, ki ne ve za R/W bit in ima fiksne delaye med oddajanjem

Dovolj?
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Goran_V
Neznanec
Neznanec



Pridružen-a: Sre 03 Dec 2008 18:28
Prispevkov: 2
Aktiv.: 0.01

PrispevekObjavljeno: Pet Dec 12, 2008 7:10 pm    Naslov sporočila:   Odgovori s citatom

Stvarca deluje Very Happy Very Happy
Hvala za pomoč!!!
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 -> Osnove programiranja AVR-jev Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Pojdi na stran Prejšnja  1, 2
Stran 2 od 2

 
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: 492 dni


Powered by phpBB © 2001, 2005 phpBB Group