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 w 2025? 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 19 maja 2025, o 14:11


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 15 ] 
    Autor Wiadomość
    PostNapisane: 4 gru 2011, o 22:06 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    Witam,

    Mam problem z wskazaną lekcją przy zmianie uK na ATMEGA644PA.
    Programator USBasp, programowanie przez eclipse, fusy ustawiłem przez calculator avr (wyłączyłem jtaga, ustawiłem taktowanie zewnętrzne >8Mhz, wyłączyłem podział f/8 - ale to zapewne tylko odnosi się do taktowania wewnętrznego).
    W gotowej lekcji zmieniłem nazwy rejestrów timera2 na odpowiednie atmega644pa i zmieniłem nazwę przerwania.
    Nie wiem czy wina tkwi w fuse bitach, czy jednak nie do końca ustawiam przy zmianach odpowiednio timer2.
    Wszystko się skompilowało, wgrało i niestety timery nie działają (wstawiłem w przerwaniu wyłączenie podświetlania LCD dla sprawdzenia)
    Transmisja po UDP śmiga. Nie działa funkcja bezpośrednio powiązana z timerem - SuperDebounce.
    Zapewne coś nie tak mam z ustawieniem timera?, (coś jeszcze trzeba dodać?).
    Proszę o pomoc, udostępnienie działającego kodu lekcji pod 644.

    Pozdrawiam.
    stanisław

    Zmiany:

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:12 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2011
    Posty: 81
    Pomógł: 0

    a czy w ustawieniach projektu zmieniles nazwe uC i jego taktowanie ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:17 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    Michal_PB1 napisał(a):
    a czy w ustawieniach projektu zmieniles nazwe uC i jego taktowanie ?


    Tak zmieniłem, uK: ATmega644P, taktowanie: 11,0592MHz - zostało tyle było i tyle miało być, projekt "przeczyściłem".



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:19 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2011
    Posty: 81
    Pomógł: 0

    a nie ustawiasz przypadkiem 2 timerow ?
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    tryb CTC w timer 2b -> chyba tu sie pomyliles bo mialo byc TCCR2A ?
    a presklare w timer 2a



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:37 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    ^^
    Dwa timery w timerze? Wydaje mi się, że te bity ustawia się tylko raz w danym timerze. Zapewne trzeba ustawić "coś" jeszcze. :(

    CSy dla Timera2 są tylko w rejestrze TCCR2B.



    Ostatnio edytowano 4 gru 2011, o 22:40 przez woow, łącznie edytowano 1 raz

    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:39 
    Offline
    Użytkownik

    Dołączył(a): 05 lis 2011
    Posty: 81
    Pomógł: 0

    a próbowales zmienic i spr ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:42 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    Zmieniałem prawie wszystko co możliwe pomiędzy A i B.
    Zostawiłem tak, jak jest zgodnie z datasheetem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:44 
    Offline
    Moderator
    Avatar użytkownika

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

    Michal_PB1 napisał(a):
    a nie ustawiasz przypadkiem 2 timerow ?
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.

    tryb CTC w timer 2b -> chyba tu sie pomyliles bo mialo byc TCCR2A ?
    a presklare w timer 2a


    Nie nie - tu jest wszystko dobrze poustawiane dla m644PA zarówno WGM21 bo jest w TCCR2A oraz preskaler bo bity są w TCCR2B. Przerwanie także dobrze w TIMSK2 hmmmm

    a na pewno są odblokowane przerwania globalne za pomocą sei(); w programie głównym ?

    Generalnie dobrą kolega drogą idzie sprawdzając w ten sposób czy działa przerwanie. Trzeba je odpalić oczywiście, więc czekam na info n/t sei();

    _________________
    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: 4 gru 2011, o 22:45 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    sei() jest. Kod 1:1 z tym dodanym do książki, zmieniłem tylko to co pokazałem.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 22:49 
    Offline
    Moderator
    Avatar użytkownika

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

    hmmm proszę spakować do ZIP albo RAR i mi na maila cały ten zmieniony projekt podesłać ok? biuro@atnel.pl to postaram się rzucić okiem.

    _________________
    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: 4 gru 2011, o 22:54 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    wysłane.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 23:16 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    Właśnie wymieniłem uK na nową 644PA, ustawiłem ponowie fusy, wgrałem program i wszystko śmiga jak należy.
    Problem może tkwić w konkretnym egzemplarzu uK? W końcu oba były nowe ;/
    Dziękuję za pomoc, przepraszam, że niepotrzebnie jak się okazało, zawracałem głowę.

    Pozdrawiam serdecznie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 4 gru 2011, o 23:26 
    Offline
    Moderator
    Avatar użytkownika

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

    No właśnie oglądałem kod i błędów nie widzę. Ja jednak byłbym bardzo daleki od tego żeby obwiniać procka - bo to byłoby zbyt dziwne. Proponuję go jeszcze raz włożyć, zaprogramować i sprawdzić. No bo jak ??? wszystko działa w nim tylko ten Timer2 nie działa ? to byłby istny cud i aż bym chciał taki przypadek zobaczyć na swoim stole operacyjnym. Więc gdyby kolega doszedł już do wniosku, że jest z nim coś mocno nie tak - to proszę go w razie czego nie wyrzucać tylko podesłać do mnie - zrobię mu trepanację ;) programową oczywiście. Ale cieszę się że ruszyło wszystko.

    _________________
    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: 5 gru 2011, o 19:02 
    Offline
    Nowy

    Dołączył(a): 04 gru 2011
    Posty: 10
    Pomógł: 0

    uK po pełnym, wielokrotnym kasowaniu i wgraniu ponownie wsadu zaskoczył. Do tej pory jednak nie wiem co było przyczyną problemów.
    Najwyraźniej sprawdza się stare, polskie powiedzenie: niedzielna praca w g* się obraca.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 28 gru 2011, o 23:41 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 17 paź 2011
    Posty: 39
    Lokalizacja: Łódź
    Pomógł: 0

    Niestety potwierdzam - mój ATmega644PA też miał ten problem Timer1 działał od razu ok lecz Timer2 nie, za poradą kolegi woow skasowałem uP i wgrałem od nowa wsad i jest już ok. A ile się naszukałem błędu wcześniej to....życie jest za krótkie na takie niespodzianki:/



    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: 15 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 17 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:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO