RTV forum PL | NewsGroups PL

Spowolnione działanie Atmega8 w finalnej wersji układu z LCD i pomiarem temperatury?

atmega8 i spowolnione działanie

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Spowolnione działanie Atmega8 w finalnej wersji układu z LCD i pomiarem temperatury?

Rogher
Guest

Sun Dec 05, 2004 9:09 am   



Witam,

Mam następujący problem: robię układzik na atmega8. LCD, pomiar
temperatury itp.
uruchomiłem wersję prototypową i gdy dopracowałem wszystko wykonałem już
ostateczną wersję płytki.
Po montażu i uruchomieniach okazało się że procek chodzi na szybkości o
wiele niższej niż w prototypie. (samego protoypu nie mogę już włączyć bo
uległ znacznej dewastacji w trakcie uruchamiania i potem demontażu).
atmega wykorzystuje wewnętrzny oscylator 1MHz czyli niżej już nie mogła
zejść (a jest ok. 10 razy wolniej - aczkolwiek się waha).
Początkowo myślałem że timer jest coś źle ustawiony natomiast to nie
jest możliwe bo nawet inicjalizacja LCD i wyświetlenie na nim ciągu
znaków jest znacząco spowolniona (przy wyświetleniu ciągu znaków widzę
po kolei jak wyświetla się każdy znak - jeden za drugim. A to już nie ma
nic wspólnego z timerami.)

Grupę przeszukałem i nic. Wcześniej nie zauważyłem aby ktoś miał taki
problem. Nie ukrywam że ta sztuka Atmegi przeżyła swoje podczas
uruchamiania ale chodzi. (Ale jest to inna sztuka niż ta z prototypu).

Do linii XTAL1 i 2 podłączone są linie danych wyświetlacza LCD.

Ma ktoś jakiś pomysł?

Rogher
--
Archiwum grupy: http://niusy.onet.pl/pl.misc.elektronika

Rogher
Guest

Sun Dec 05, 2004 12:20 pm   



Piotrek Sz. napisał(a):
Quote:
rogher@wp.pl (Rogher) napisał(a):
..

po kolei jak wyświetla się każdy znak - jeden za drugim. A to już nie ma
nic wspólnego z timerami.)

..

Rogher


To chyba z przerwaniami coś nie tak Sad
Procek traci zbyt dużo czasu(mocy obliczeniowaj) na obsługę przerwań
timera(ów),sprawdź wartość preskalera.
Podaj więcej szczegółów - jakie przerwania wykorzystujesz i jak często.

Pozdrawiam
Piotrek Sz.



To raczej nie o to chodzi. Przerwania mam od timera1, i int0. Też na

początku sądziłem że tu coś nie tak, jednak wykluczyłem to bo po resecie
układu jest kawałek kodu z inicjalizacją peryferiów a potem procedura
inicjalizacji LCD itp. W programie głównym raz w pętli odświeżana jest
zawartość ekranu LCD. Kod napisany jest w C (CodeVision) i wykorzystuję
procedurę lcd_puts(string). W pierwszej pętli po resecie (gdy LCD jest
czysty) widać kolejno pojawiające się znaki na LCD. A z tego co wiem
funkcja lcd_puts() opiera swoje delaye na pętlach opóźniających czyli
tylko zegar ma tu znaczenie. Co dziwne w prototypie wszystko było ok.
Obecnie podniosłem zegar z 1MHz na 8 MHz i chodzi mniej więcej jak w
prototypie ale to nie jest rozwiązanie. Chcę wiedzieć o co chodzi.

Rogher
--
Archiwum grupy: http://niusy.onet.pl/pl.misc.elektronika

Piotrek Sz.
Guest

Sun Dec 05, 2004 12:29 pm   



rogher@wp.pl (Rogher) napisał(a):
...
Quote:
po kolei jak wyświetla się każdy znak - jeden za drugim. A to już nie ma
nic wspólnego z timerami.)
...
Rogher

To chyba z przerwaniami coś nie tak Sad
Procek traci zbyt dużo czasu(mocy obliczeniowaj) na obsługę przerwań
timera(ów),sprawdź wartość preskalera.
Podaj więcej szczegółów - jakie przerwania wykorzystujesz i jak często.

Pozdrawiam
Piotrek Sz.



--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/

elektroda NewsGroups Forum Index - Elektronika Polska - Spowolnione działanie Atmega8 w finalnej wersji układu z LCD i pomiarem temperatury?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map