Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięWaitus w BascomAVR
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
witajcie,
moze portaficie mi pomoc.
piszac instrukcje np.Waitus 6000 (lub inna wartosc) w rzeczywistosci uzyskuje opoznienie duzo wieksze dla (6000 - ok.3,5sek).
uzywam AtMega8 z 8MHz kwarcem.
program jest napisany prawidlowo (tzn. usuniete instrukcje $sim, zadeklarowany odpowiedni kwarc i plik rejestrow itd..
pzd.
moze portaficie mi pomoc.
piszac instrukcje np.Waitus 6000 (lub inna wartosc) w rzeczywistosci uzyskuje opoznienie duzo wieksze dla (6000 - ok.3,5sek).
uzywam AtMega8 z 8MHz kwarcem.
program jest napisany prawidlowo (tzn. usuniete instrukcje $sim, zadeklarowany odpowiedni kwarc i plik rejestrow itd..
pzd.
re
tak tez,
w bascomie pisze nie od dzis i wszystkie mozliwosci sprawdzilem.
fragment kodu to heheh,
Set D1
Waitus 6000
Reset D1
po zachowaniu sie programu stwierdzam ze zle sa przeliczane wartosci w instrukcji opoznienia, bo Waitms i Wait tez zle dziala...
timerow nie moge wykorzystac bo juz maja swoja funkcje...
pzd
w bascomie pisze nie od dzis i wszystkie mozliwosci sprawdzilem.
fragment kodu to heheh,
Set D1
Waitus 6000
Reset D1
po zachowaniu sie programu stwierdzam ze zle sa przeliczane wartosci w instrukcji opoznienia, bo Waitms i Wait tez zle dziala...
timerow nie moge wykorzystac bo juz maja swoja funkcje...
pzd
Uzywasz jakichs przerwan, np. od tych timerow?
Jesli tak to tu moze byc przyczyna. Myslalem, ze tak dzieje sie z wylaczonymi wszystkimi przerwaniami. Choc nawet z nimi wydluzenie o 3 rzedy wielkosci jest dziwne - musialyby sie wywolywac czesciej nic co 6ms i trwac odpowiednio dlugo aby zrobic opoznienie 3,5s (ale to moze byc - zalezy od tego co jest w przerwaniu)
Jesli tak to tu moze byc przyczyna. Myslalem, ze tak dzieje sie z wylaczonymi wszystkimi przerwaniami. Choc nawet z nimi wydluzenie o 3 rzedy wielkosci jest dziwne - musialyby sie wywolywac czesciej nic co 6ms i trwac odpowiednio dlugo aby zrobic opoznienie 3,5s (ale to moze byc - zalezy od tego co jest w przerwaniu)
re
timery i przerwania w tym czasie nie pracuja,
ale sprawdzilem teraz inaczej, wycialem caly program i pozostalo tylko
'$sim
$regfile = "m8def.dat"
$crystal = 8000000
Config Watchdog = 1024
Stop Watchdog
'konfiguracje i aliasy
Do
Set D3
Waitms 100
Reset D3
Waitms 100
Loop
dioda powinna intensywnie mrugac, natomiast mruga ok 7-8 razy wolniej, czyli okres przynajmiej 1,5sek.
ale sprawdzilem teraz inaczej, wycialem caly program i pozostalo tylko
'$sim
$regfile = "m8def.dat"
$crystal = 8000000
Config Watchdog = 1024
Stop Watchdog
'konfiguracje i aliasy
Do
Set D3
Waitms 100
Reset D3
Waitms 100
Loop
dioda powinna intensywnie mrugac, natomiast mruga ok 7-8 razy wolniej, czyli okres przynajmiej 1,5sek.
re
he, a widzisz...
i tutaj jest chyba rozwiazanie mojego problemu.
z avrami nie mialem jeszcze blizszego kontaktu i dlatego tak wyszlo..
dzieki
pozdrawiam
i tutaj jest chyba rozwiazanie mojego problemu.
z avrami nie mialem jeszcze blizszego kontaktu i dlatego tak wyszlo..
dzieki
pozdrawiam
re
zgadza sie..., nie chodzilo mi o dokladne odliczanie (nie czytales postu chyba)
PROBLEM ROZWIĄZANY!!!
dzieks
pzd.
PROBLEM ROZWIĄZANY!!!
dzieks
pzd.
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 0 gości