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

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 17 cze 2025, o 22:17


    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    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 1 gość


    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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO