Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki



Teraz jest 29 gru 2024, o 02:44


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 
Autor Wiadomość
PostNapisane: 6 lis 2012, o 22:02 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

czy jeśli zaznaczę w fusach manualnych w mkAVRCalculator
BODLEVEL0
BODLEVEL1
BODLEVEL2
i zapiszę fusy to wyłączę sprawdzanie napięcia?
(bo z opisu wygląda to, jakbym ustawiał trzy 0, a nie trzy jedynki

jak wyłączyć sprawdzanie napięcia?
fusami, czy programowo?



Ostatnio edytowano 7 lis 2012, o 17:13 przez wireless, łącznie edytowano 3 razy

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:07 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

Nie ustawiaj nic w Fusach Manualnych - jak nie wiesz do końca - co i jak ;) tak na przyszłość

masz do tego pierwszą zakładkę "Fusy właściwości" tam zobacz o co chodzi ...

poza tym BODLEVEL nie jest do wyłączania sprawdzania napięcia tylko odwrotnie - to za jego pomocą włączasz to nadzorowanie napięcia na wyznaczony poziom. Ale jak mówię - zakładka "Fusy właściwości"

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:10 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Domyślnie BOD jest wyłączony 111.
Fuse to bezpiecznik jak go przepalisz to masz [] - 0 jak nic nie robisz to [|] - 1

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:12 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

i dokładnie to widać w MkAvrCalculator w zakładce Fusy właściwości - co napisał wyżej kolega Krauser ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:17 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

czyli nie zaoszczędzę tu żadnej energii, ponieważ BOD jest wyłączony,
fajnie nic tym razem nie zepsuję :)

atmega88 i rfm70 przestają mi pracować przy napięciu ok. 2.2 V,
czy jak ustawię BODLEVEL na 1.8V to będzie to pracowało dłużej?
chyba nie, ale zapytam mimo wszystko



Ostatnio edytowano 6 lis 2012, o 22:23 przez wireless, łącznie edytowano 1 raz

Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:23 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

ale za to masz np domyślnie włączony KOMPARATOR analogowy, i on żre sporo prądu, więc go warto wyłączyć jak idziesz spać na bateriach ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
 Tytuł: Re: BODLEVEL
PostNapisane: 6 lis 2012, o 22:26 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

mirekk36 napisał(a):
ale za to masz np domyślnie włączony KOMPARATOR analogowy, i on żre sporo prądu, więc go warto wyłączyć jak idziesz spać na bateriach ;)


mam wyłączone raczej wszystko co znalazłem w power.h
tylko timer1 potrzebuję do testowania życia CR2032

...strzeliłem byka ta atmega88 pracowała na 8 MHz, a powinna na 0-4 MHz, zeby pracowac do 1.8V



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 17:10 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

a ja dalej swoje ;) oszczędzenie baterii!

ATmega88PA 1 MHz

jak ustawić i na jaki tryb usypiania, aby procesor robił coś co 60s (około)
mnie wychodzi Power-save, ale dopiero w IDLE zaczęło coś chodzić

ustawiłem Timer1 w trybie CRC:

TCCR1B |= (1 << WGM12); // Tryb 4, CTC ona OCR1A
TIMSK1 |= (1 << OCIE1A); //ustawienie przerwania na "compare match"
TCCR1B |= (1 << CS12) | (1 << CS10); // preskaler właściwie nie wiem ile
OCR1A = 1; // tu też nie wiem ile

a może to trzeba w trybie NORMAL

TIMSK1=_BV(TOIE1);
TCCR1B=_BV(CS10); // no właśnie preskaler na ile?

wiem Mirku, że napisałeś to na co drugiej stronie w bibli nr 1 ;) , ale ja jakiś niekumaty jestem,
ciągle wychodzą mi za małe wielkości



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 17:53 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

Jeśli to 60 sekund nie musi być dokładne to wykorzystaj tryb Power-down, a budzenie zrealizuj przy użyciu Watchdoga, bo w Atmega88PA WDT może generować również przerwanie. Fakt, ze procesor zbudzi się kilka razy nim minie 60 sekund, ale w ten sposób oszczędzisz najwięcej energii.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 18:04 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

poczekaj - bo zastanawiasz się jaki preskaler - ale hmmm przecież ciebie interesuje czas 60s i od tego trzeba wyjść ;)

60s to ile będzie hertzów ? 1/60 = 0,01666Hz

no to bach, zakładając, że mamy F_CPU = 1MHz

zaczynamy od największego plreskalera:

1 000 000 / 1024 / 0,0166 = 58829 (OCR1 dla Timera1)

czyli dzięki temu że preskaler będzie = 1024 a do OCR1A wpiszesz wartość 58829 to przerwanie będziesz miał co ok 60s - pasuje ? ;)

------------------------ [ Dodano po: 1 minucie ]

ale oczywiście - przerwanie watchdoga może okazać się nieco lepszym pomysłem zakładając, że uda się procesor w międzyczasie wprowadzać w stan większej hipnozy ;) .... wtedy w przerwaniu wystarczy że będziesz miał jakiś licznk, który odmierzy ci ten czas ok 1 minuty i po zawodach

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 18:33 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

Mirku, nie pasuje :(

TCCR1B |= (1 << WGM12); // Tryb 4, CTC ona OCR1A
TIMSK1 |= (1 << OCIE1A); //ustawienie przerwania na "compare match"
TCCR1B |= (1 << CS12) | (1 << CS10); // preskaler na 1024
OCR1A = 58829;

dioda miga filuternie co jakieś 10ms w ISR (TIMER1_COMPA_vect)

GWYN już miałem odrobione Twoje lekcje, ale poszły gdzieś na Berdyczów, tylko 200 pamiętam z 3 pozycji :(
coś mam popaprane gdzie indziej?

watchdoga zastosuję, ale przecież muszę się tego z timerami nauczyć!

już nie miga, musialem jeszcze coś odłaczyc, czego nie zauwazyłem wcześniej



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 19:51 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

Ale co ty opowiadasz, że dioda miga filuternie co 10ms ? :(

no tak to się właśnie nie nauczysz tych timerów :(

skoro masz taktowanie 1MHz
i włączysz preskaler 1024 to czy tego chcesz czy nie chcesz (możesz sobie mówić co chcesz) ;) ... a i tak Timer1 będzie taktowany częstotliwością ok 976 Hz - no spróbuj z tym podyskutować ? Spróbuj zadać sam sobie pytanie itp ...

no a teraz idziemy dalej, skoro do Timera1 dociera sygnał z częstotliwością 976Hz to gdybyś do OCR1A w trybie CTC wpisał wartość 976 - to czy chcesz znowu czy nie chcesz - to MUSISZ mieć przerwanie co 1Hz .... i znowu .... chcesz o tym podyskutować ? że to niby nieprawda ? czy jak ?

a więc ostatni krok - pomnóż sobie 976 x 60 = to wyjdzie ci 58560 - więc gdy taką wartość wpiszesz do OCR1A to mów sobie dalej co chcesz ale musisz mieć przerwanie co ok 60 sekund i już.

----------------------------

A jeśli nie masz co 60 sekund - to zacznij sprawdzać co źle zrobiłeś, gdzie zrobiłeś babola - bo możliwości masz mnóstwo, chociażby to, że np fusy masz ustawione na większe taktowanie, albo jeszcze coś innego - nie wiem. Poza tym całego kodu nie widzę więc nie podopowiem dalej :(

------------------------ [ Dodano po: 5 minutach ]

Poza tym zastanawiam się jak ty to oczami widzisz, że dioda miga filuternie co 10ms ? ;) toż to już jest taki PWM że powinna dla oka świecić praktycznie światłem ciągłym tyle że połowę słabiej przy wypełnieniu 50%

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 20:10 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

oczywiście, w programie jeszcze mam coś co zakłóca te 60s,
teraz kiedy już wiem, że timer jest dobrze ustawiony to
wkrótce znajdę przyczynę i to filuterne mruganie (chciałem
napisać chyba 100ms, wszystko wyłapiesz :) ) zlikwiduję.

Wielkie dzięki za Cierpliwość!



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 20:17 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

No to filuterne 10ms to dopiero po kolejnym czytaniu mi się rzuciło w oczy ;) hyhyhyhy

spokojnie ja cierpliwość mam - tylko że w razie czego daj znać co jest ci jeszcze niejasne z tego obliczania czasu przerwania ? bo to jest ważne, a błąd na pewno znajdziesz ..... Sprawdziłeś taktowanie procka ? tzn fusy ?

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 22:11 
Offline
Użytkownik

Dołączył(a): 14 maja 2012
Posty: 518
Pomógł: 6

Mirku, to Twoja wina, że mi nie chodziło !!! ;)
W zestawie ATB brakuje:
rfm70, nadajnika i odbiornika Telecontroll i Aurela, rfm12 :lol:,
wbudowane oczywiście, bo komu sie chce podlączać tyle kabelków,
może w wersji 1.6 ;)

Migało nieprawidłowo, bo nie chcialo mi się podłączać rfm70
do ATB i testowałem program bez niego.

Potem podłączałem procesor na płytce stykowej z RFM70 i czasy
mi się nie zgadzały.
No i przestałem wierzyć, że coś rozumiem z ustawienia Timera.

Za bałaganiarstwo i lenistwo trzeba płacić!

A niestety nie mam jeszcze dopracowanego algorytmu
na wypadek gdy nadajnik nie działa,
dopiero mam zabezpieczenie, gdy odbiornik nie jest np. włączony.

Bardzo optymistycznie mnie nastraja to, że uklad z rfm na baterii CR2032
daje radę jak na moje potrzeby, 36 h pracował nadając i czekając na potwierdzenie
co minutę, bez wyłączania żadnego modułu procesora i usypiania, co wygląda
bardzo obiecująco. I to na 8Mhz.
A ja potrzebuję, żeby układ zadziałał z 3 razy na dzień.

Teraz będę testował to samo z oszczędzaniem.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 7 lis 2012, o 22:22 
Offline
Moderator
Avatar użytkownika

Dołączył(a): 03 paź 2011
Posty: 27320
Lokalizacja: Szczecin
Pomógł: 1041

wireless napisał(a):
Mirku, to Twoja wina, że mi nie chodziło !!! ;)
W zestawie ATB brakuje:
rfm70, nadajnika i odbiornika Telecontroll i Aurela, rfm12 :lol:,
wbudowane oczywiście, bo komu sie chce podlączać tyle kabelków,
może w wersji 1.6 ;) .


Nooo tak ;) ;) ....

a odnośnie badań, to rzeczywiście dobre prognozy - po włączeniu wszystkich możliwości oszczędzania - pewnie będzie wszystko ładnie i długo śmigać ;)

_________________
zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
Wyświetl posty nie starsze niż:  Sortuj wg  
Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 16 ] 

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 6 gości


Nie możesz rozpoczynać nowych wątków
Nie możesz odpowiadać w wątkach
Nie możesz edytować swoich postów
Nie możesz usuwać swoich postów
Nie możesz dodawać załączników

Szukaj:
Skocz do:  
cron
Sitemap
Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
phpBB SEO