|
www.elektron.si
|
Poglej prejnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Sob Feb 22, 2014 13:57:04 Naslov sporočila: Tezave s prikazovanjem na graficnem LCD-ju |
|
|
Lep pozdrav!
Imam naslednjo težavo.
Program za menu je napisan tako, da imam veĆØ razliĆØnih ekranov.
Ko naredim prvi in drugi krog, je slika na ekranu OK.
Po 2. krogu,skozi menu, pa se slika deformira - nakako, kakor da bi se na polovici zamaknila, ĆØrte grejo postrani....
Ugotovil sem, da ĆØe odstranim vse okrasne ĆØrte, da je s slikami vse OK (samo ĆØisti tekst), ko pa vrnem okrasne ĆØrte (linije) nazaj, pa zopet ista pesem.
Sem poizkusil z dvema razliĆØnima grafiĆØnima zaslonoma, pa je ista pesem.
Program sem napisal v BascomAVR, za ukontroler Atmega32.
Hvala za pomoĆØ.
|
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Sob Feb 22, 2014 15:03:44 Naslov sporočila: |
|
|
Pozdravljeni,
seveda sem mislil samo in zgolj na "normalni " graficni LCD, ki ga zmore poganjati Atmega32.
Vmes sem ugotovil Ŕe nekaj novega:
iz programa sem vrgel ven vse sub rutine, tako da program sedaj sam avtomatsko scrolla skozi menije.
Težave so v tem primeru izginile.
Gledam sedaj po helpu, $HWSTACK nekaj omenja subrutine.
Trenutno imam $HWSTACK=32
Moram dati veĆØ, manj....
Ali morda to sploh nima veze in je kaj drugega krivo?
|
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Sob Feb 22, 2014 15:27:42 Naslov sporočila: |
|
|
Kot kaže je težava v definiciji $HWSTACK.
Vrednost 32 sem poveĆØal na 80.
Prej se je slika ekrana deformirala na vsakem 3. krogu scrolanja, sedaj pa se na vsakem 8. krogu.
Katera je maksimalna vrednost $HWSTACK, ki jo lahko vpiŔem v Bascom AVR?
|
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Sob Feb 22, 2014 17:07:32 Naslov sporočila: |
|
|
Tako, težava odpravljena.
Vzrok je bil v napaĆØnem izhodu iz sub rutine z goto ukazom.
Zaradi tega se je stack poĆØasi poveĆØeval...
|
|
Nazaj na vrh |
|
|
reber moderator
Pridruen/-a: Pet Nov 2007 8:00 Prispevkov: 2149 Kraj: Bled
|
Objavljeno: Sob Feb 22, 2014 21:25:18 Naslov sporočila: |
|
|
Će prav vem, je za izhod iz subrutine uporabljen ukaz return
Me veseli, da si naŔel napako
_________________ Zasebna sporoĆØila sprejemam na e-mail |
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Ned Mar 02, 2014 15:08:19 Naslov sporočila: |
|
|
Lepo pozdravljeni,
imam zopet podobno težavo, mislim, da nima istega vzroka kot tista za katero sem prosil pomoĆØ pred tednom dni.
Pripel sem sliko, kaj se dogaja na GLCD-ju, ne da bi karkoli pritiskal ali spreminjal.
Prva slika prikazuje, ko je vse v redu, druga slika prikazuje prvo napako ,tretja slika prikazuje obe napaki.
Ura spodaj pokaže koliko ĆØasa je minilo, da sta se ti dve napaki pojavili.
Tudi po 24 urah sem do sedaj opazil samo ti dve napaki.
Kaj je lahko vzrok za to?
MogoĆØe malo pojasnil:
- koda je napisana v BascomAVR
- temperaturo merim s temperaturnimi senzorji DS1820
- uro sem naredil z uporabo TIMER1 v BASCOMAVR-ju.
Opis: |
|
Velikost datoteke: |
82.47 KB |
Pogledana: |
1227 krat |
|
Opis: |
|
Velikost datoteke: |
43.65 KB |
Pogledana: |
1172 krat |
|
Opis: |
|
Velikost datoteke: |
43.76 KB |
Pogledana: |
1178 krat |
|
|
|
Nazaj na vrh |
|
|
reber moderator
Pridruen/-a: Pet Nov 2007 8:00 Prispevkov: 2149 Kraj: Bled
|
Objavljeno: Ned Mar 02, 2014 16:23:05 Naslov sporočila: |
|
|
MogoĆØe napaĆØen naĆØin poÅ”iljanja podatkov na display, mogoĆØe je potrebno pred zapisovanjem to lokacijo izbrisati?
_________________ Zasebna sporoĆØila sprejemam na e-mail |
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Ned Mar 02, 2014 16:29:52 Naslov sporočila: |
|
|
Verjetno to ni glavni razlog, ker ostali parametri, ki se tudi izpisujejo, ostanejo nepopaĆØeni.
sem poizkusil z brisanjem, pa lahko reĆØem, da je potem bilo Å”e veliko slabÅ”e, je kar cel ekran "ponorel"...
Mislim da gre iskati sistemsko napako, pa sam žal nisem dovolj veÅ”ĆØ tega.
Malo sumim Timer, ker dokler nisem imel ure, se to ni dogajalo.
|
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Pon Mar 03, 2014 08:03:17 Naslov sporočila: |
|
|
Dobro jutro,
ali bi morda Ŕe kdo imel kakŔne idejo, kaj bi lahko bilo narobe?
V prvi verziji tega programa, ko nisem imel Ŕe ure in prikazovanja dnevov, te težave nisem imel...
Ali bi mogoĆØe lahko bila težava v Timer-ju?
Za uro namreĆØ uporabljam Timer1, ĆØe prav vem, tudi DS1820 za branje temperature uporablja timer.
Ali je možno da se med branjem temperature, aktivira Timer1 in potem senzor temeprature ne prebere pravilno? To bi lahko bil odgovor na drugo težavo, morda,
ne vem pa, zakaj ne izpiŔe pravilno dan v tednu.
|
|
Nazaj na vrh |
|
|
reber moderator
Pridruen/-a: Pet Nov 2007 8:00 Prispevkov: 2149 Kraj: Bled
|
Objavljeno: Pon Mar 03, 2014 15:08:35 Naslov sporočila: |
|
|
Med branjem temperature bi verjetno moral ta isti timer onemogoĆØiti. Nisem prepriĆØan, ĆØe lahko uC v ĆØasu branja iz 1-wire senzorja, dela Å”e kaj drugega, kot da ĆØaka in posluÅ”a. Će imaÅ” možnost, napiÅ”i program tako, da uC takrat ĆØaka, bo pa problem zaradi ure, tako da bi v tem primeru moral uporabiti zunanjo uro, oziroma program prilagoditi tako, da izvajanje ure ne bo motilo branja senzorja.
_________________ Zasebna sporoĆØila sprejemam na e-mail |
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Pon Mar 03, 2014 19:23:58 Naslov sporočila: |
|
|
Lep pozdrav!
Obogaten sem za novo spoznanje.
V programu sem diseblal TIMER, tako da ura niĆØ veĆØ ne dela, samo merjenje temperature.
Po dveh urah tesitranja je zaslon OK.
Torej je kriv TIMER1.
Sedaj pa težava, kako narediti merjenje temperature in uro? Žal nimam možnosti za zunanji ĆØip za merjenje ĆØasa...
Ali je to sploh mogoĆØe?
|
|
Nazaj na vrh |
|
|
reber moderator
Pridruen/-a: Pet Nov 2007 8:00 Prispevkov: 2149 Kraj: Bled
|
Objavljeno: Pon Mar 03, 2014 19:55:33 Naslov sporočila: |
|
|
A nima ta uC dva timerja? za uro uporabiÅ” T0, za branje 1-wire pa T1 ali obratno. Ker je moje znanje programiranja uC blizu niĆØle, bo tale moj predlog bolj ugibanje
_________________ Zasebna sporoĆØila sprejemam na e-mail |
|
Nazaj na vrh |
|
|
veter
Pridruen/-a: Sob Avg 2008 14:48 Prispevkov: 44 Kraj: Bled
|
Objavljeno: Tor Mar 04, 2014 08:53:52 Naslov sporočila: |
|
|
Pozdravljeni!
Težavo sem odpravil.
V Timer rutino sem vstavil kontrolno zastavico, ki dovoli branje senzorja le takrat, ko se je timer ravno resetiral. Tako se temperatura vedno prebere takoj po resetiranju timerja. timer se resetira vsako sekundo, tako da je za to dovolj ĆØasa.
Hvala za pomoĆØ.
|
|
Nazaj na vrh |
|
|
|
|
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 Da, lahko povleče datoteke v tem forumu
|
Powered by phpBB © 2001, 2005 phpBB Group
|
|