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 10 lip 2025, o 04:15


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 28 ] 
    Autor Wiadomość
    PostNapisane: 17 mar 2020, o 17:57 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Witam,

    dzisiaj spotkałem się z dość osobliwą sytuacją. Mianowicie MkAVRCalculator bez problemu odczytuje procka jako ATmega328P, pozwala 2-3 razy zmienić fusebity i dalej wyskakuje już błąd RC=-1. Z zastrzeżeniem, że np. zmieniam tylko bit CKDIV8 i nic więcej. O co moze chodzić ?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 18:27 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 774
    Pomógł: 40

    Pobaw sie prędkością. Tez tak mam. To chyba cos z Windowsem ,bo bylo ok później coś sie pochrzaniło. Ja sie przyzwyczaiłem do tego juz :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 18:30 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Wcześniej na tym samym układzie nie miałem problemów. Co prawda zmieniłem tylko płytkę PCB reszta komponentów pozostała bez zmian ale kurcze zastanawiałem się o co może chodzić. Próbuję zmienić cokolwiek 3, 4, 5, ... 501 raz i nic. Reset kompa 2-3 razy można zmienić i znowu to samo.

    ------------------------ [ Dodano po: 14 minutach ]

    EDIT: po czasie udało mi się coś zmienić. Zmieniłem fusebit od zegara tak, żeby był taktowany zewnętrznym kwarcem 7.3728 MHz. I co ? I już w ogóle nie mogę nic zmienic. Błąd AVRDUDE i RC=-1 nawet przy sprawdzaniu procka, dokładnie to co poniżej:
    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: 17 mar 2020, o 18:55 
    Offline
    Użytkownik

    Dołączył(a): 19 lip 2013
    Posty: 774
    Pomógł: 40

    A masz kwarc podlaczony?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 18:59 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Oczywiście, że tak. Coś pokombinowałem i mogę znaleźć procka. Ale znowu przy zapisie RC=-1. Może @mirekk36 podpowie o co może chodzić.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 19:01 
    Offline
    Moderator
    Avatar użytkownika

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

    Vroobee napisał(a):
    Witam,

    Z zastrzeżeniem, że np. zmieniam tylko bit CKDIV8 i nic więcej. O co moze chodzić ?


    to ustawiaj maksymalne spowolnienie SCK z rozwijanego pola skoro bawisz się w ŚLIMACZE taktowanie procka ;) i nie jest to żadna osobliwość tylko normalna rzecz i trzeba wiedzieć, że przy niskim taktowaniu czyli 1MHz i niżej - trzeba w USBasp spowalniać clocka. Zauważ, że MkAvrCalculator przy wykrywaniu procka żółtym klawiszem daje sobie radę - bo zawsze spowalnia sck na maxa do wykrycia i odczytu fusebitów

    _________________
    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: 17 mar 2020, o 19:13 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Teraz mam na sztywno ustawione 3.0 - 8.0 MHz (kwarc 7.3728 MHz) i problem z zapisem nadal występuje.

    Programu również nie mogę wgrać, ani przez MkClipse ani przez normalnego ECLIPSE'a. Natomiast odczyt właściwości przebiega pięknie.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 21:31 
    Offline
    Użytkownik

    Dołączył(a): 14 sie 2016
    Posty: 905
    Pomógł: 39

    A może taśma jest walnięta, albo za długa.

    Wysłane ze srajfona

    _________________
    Moje porady są błędne,nie czytać,zbanować od razu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 17 mar 2020, o 23:06 
    Offline
    Moderator
    Avatar użytkownika

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

    Vroobee napisał(a):
    Teraz mam na sztywno ustawione 3.0 - 8.0 MHz (kwarc 7.3728 MHz) i problem z zapisem nadal występuje.

    Programu również nie mogę wgrać, ani przez MkClipse ani przez normalnego ECLIPSE'a. Natomiast odczyt właściwości przebiega pięknie.


    To zanim zaczniesz się bawić z MkClipse najpierw ustaw za pomocą MkAvrCalculator normalnie fusebity

    jeśli masz kwarc to daj > 8MHz

    i wyłącz że ten CKDIV8

    _________________
    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: 20 mar 2020, o 15:37 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Okej - fusebity normalnie były od samego początku, tzn. taktowanie zewnętrzne 3.0 - 8.0 MHz (kwarc 7.3728 MHz), bez CKDIV8 (który zresztą podałem dla przykładu tylko, że zmieniając chociażby tylko tę opcję MkAVRCalculator po 2-3 razie ma problem) i jedyne co jeszcze zmieniałem to początek sekcji bootloadera na adresie 3E00 i bit BOOTRST enable. Raz zapisało, znalazło procka bez problemu. Za kolejnymi razami już tak pięknie nie było. Ani nie mogę znaleźć procka, a jak znajdzie to znowu RC=-1. Dla ułatwienia dodam schemat urządzenia, może będzie łatwiej wytknąć błąd.

    Kondensator C7 przy pinie reset USUNAŁEM - nie ma go.


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 20 mar 2020, o 18:12 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    A jaki dokładnie masz programator?



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 10:23 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    No dobra, po licznych przetestowanych opcjach objawy są takie.
    1) jeśli procek ATmega328P jest CZYSTY tzn. fabryczny wszystko idzie poustawiać. Da radę przestawić fusebity (czasami coś się wykrzaczy ale to nie jest nic poważnego).
    Fusebity zmienione na stałe
    - CKDIV8 disabled
    - clock 3.0 - 8.0 MHz (kwarc 7.3728 MHz)
    - BOOTRST w mkAVRcalculator zaznaczony (powinien zaczynać od sekcji bootloadera)
    - BLS addr 0x3E00
    2) próbuję wgrać bootloader i tu pojawia się już problem. O ile załądowanie bootloadera na takich parametrach:
    - ATmega328P
    - 7.3728 MHz
    - BAUD 115200
    - BLS addr 0x3E00
    - wait 3s
    nie ma większego problemu, tak przy ładowaniu hex'a przez bootloader są dwie możliwe opcje. Albo rozpoczyna się program i tak jakby bootloader przestaje istnieć - mkBootloader nie może już go odczytać (timeout), albo program się w ogole nie rozpoczyna ale bootloader działa i mkBootloader niby program za każdym razem ładuje. Nie mam pojęcia o co może chodzić. Podejrzewam, że coś z adresami jest nie tak. No i na dodatek po takim wgraniu programu przez bootloader nie idzie ponownie nic zapisać w procku. Trzebe "coś" zrobić, żeby się naprawiło i tu jest metoda prób i błędów trochę bo nie wiem czym jest to "coś". Czasami się uda, a czasami nie.

    Korzystam z programatora USBasp od ATNEL'a, mkAVRcalculator v1.1 build 82 i mkBootloader v2.0 build 11.

    Proszę o pomoc :(



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 11:24 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Wrzuć fotkę jak to masz połączone - ja nigdy nie miałem problemów z programatorami Atnel a miałem/mam wszystkie ich wydania.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 12:57 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Mam podejrzenie, że to nie jest problem z programatorem tylko raczej z prockiem, a raczej z tym jak próbuję wrzucić bootloader i program, ew. z płytką. Połączenie proc->programator jest ok., bo przecież czasami (w większości) daje radę zaprogramować i zawsze odczytuje poprawnie procesor. Wrzuciłem wcześniej schemat elektryczny płytki z zastrzeżeniem, że usunięty był kondensator C7 przy pinie RST. Ale przy usunięciu wszystkich urządzeń po SPI i pozostawieniu tylko połączenia z programatorem nadal problem z ładowaniem bootloadera i programu występuje. Jak się wgra "poprawnie" bootloader i następnie przez bootloader wgra się pierwszy program to potem procek się wysypuje i nie można nic wgrać przez programator (ani zmienić fusebitów, ani wgrać programu).



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 14:30 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Wrzuć fotkę



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 19:03 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    ale czego ? :)



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 19:08 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 mar 2014
    Posty: 356
    Lokalizacja: Pruszków
    Pomógł: 15

    micky napisał(a):
    Wrzuć fotkę jak to masz połączone - ja nigdy nie miałem problemów z programatorami Atnel a miałem/mam wszystkie ich wydania.


    No kolega napisał wcześniej.

    Pozdrawiam Paweł.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 20:37 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Obrazek

    Czarne złącze usb idzie do zasilacza laboratoryjnego (tylko linie zasilania), pomiędzy urządzeniem, a programatorem jest przewód IDC 10-6 pin plus przejściówka KANDA 6-pin do 6 pinowego goldpina 1,27 raster.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 21 mar 2020, o 23:43 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Ale żeś obciął fotkę. Wstaw żeby było widać całość - obstawiam, że masz za długi kabelek ISP.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 03:12 
    Offline
    Użytkownik

    Dołączył(a): 14 sie 2016
    Posty: 905
    Pomógł: 39

    Albo taśma źle zaciśnięta, albo cięta nożem zamiast nożyczkami - wąsy zwierają.

    _________________
    Moje porady są błędne,nie czytać,zbanować od razu.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 09:36 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 26 mar 2014
    Posty: 356
    Lokalizacja: Pruszków
    Pomógł: 15

    Witaj
    A masz może schemat tej twojej płyteczki z tą atmegą może masz coś podpięte pod linie ISP (np. linie zegara)
    i przy wolniejszym transferze działa a przy szybszym nie.
    Przestaw procka na jakieś wolne taktowanie może nawet z wewnętrznego rezonatora i sprawdź czy jesteś w stanie zmieniać fusebity.

    Ja ze swojej strony mogę potwierdzić, że programatory Mirka działają bez najmniejszych problemów.
    Jedynie jak mam podpięty programator na przedłużaczu USB takim 1.8m i kabelek od CANDY długi ze 30cm
    to zdarza się w Eclipse złe rozpoznawanie procka (wykrywa inną sygnaturę) ale po ponownym kliknięciu programowania działa.

    Pozdrawiam Paweł.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 09:52 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    No więc tak, schemat został wrzucony już wcześniej ale wrzucę jeszcze raz w załączniku. Do SPI jest podpięty tylko RFM73D, podciągnięte linie CC i CSN do VCC (3.3V) na stałe więc z wykrywaniem urządzenia nie powinno być problemu.

    Co do programatora - wiem, że nie ma z nim problemów. Dlatego nawet nie podejrzewam źle działającego programatora :) natomiast nie wiem zupełnie gdzie celować dalej. Może faktycznie kabel IDC jest za długi. Poniżej wrzucam jak to całościowo wygląda.
    Obrazek
    Obrazek
    Obrazek


    Załączniki:

    Aby zobaczyć załączniki musisz się zalogować. Tylko zalogowani użytkownicy mogą oglądać i pobierać załączniki.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 10:33 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Skróć taśmę i sprawdz czy nie ma problemów ze zwarciami pomiędzy pinami.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 13:17 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Skróciłem przewód do 10 cm. Wszystko jest poprawnie, nie ma zwarć. Testowałem na innej płytce i jeśli chodzi tylko o przewód to jest on w porządku.

    Raz po raz dostaję oprócz RC=-1 taki komunikat:
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Nie mam pojęcia o co w nim chodzi i jak to ewentualnie naprawić. Spróbowałem na innym tego typu urządzeniu (wcześniejszy model) i wszystko się pięknie programuje z małym wyjątkiem.
    Wgrywam bootloader na takich parametrach:
    Obrazek
    Compile -> bez błędów -> upload to MCU (autoclose) -> bez błędów.
    Podłączam urządzenie do portu USB i przez baaardzo długi czas wysyła "?" na terminal. Po załadowaniu programu poprzez mkBootloader program się nie odpala (zwykłe miganie diodą). Czasami jest na odwrót. Program działa ale później bootloadera jakby nie ma i mkBootloader wydaje Błędny odczyt BLS albo timeout.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 14:32 
    Offline
    Użytkownik

    Dołączył(a): 25 lip 2013
    Posty: 2596
    Pomógł: 129

    Widać, że programator ma problem z komunikacją z prockiem. Dlatego też nie może odczytać sygnatury (plus pozostałe błędy). Sprawdziłeś czy linie ISP idą do dobrych nóg uC? Podlącz sam procesor do programatora i zobacz czy będzie all ok. Na ten Twojej małej plytce układ resetu i inne linie ISP mogą być podpięte niebezpośrednio do programatora i to może powodować tego typu problemy.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 22 mar 2020, o 14:45 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Dobra - to już ogarnąłem. Były brudne styki złącz goldpin, ubrudziłem je topnikiem :) ale nadal aktualna sprawa z bootloaderem. Dodam tylko, że fusebity ATmegi ustawione są na do domyślny adres BLS i bit BOOTSRT jest zaznaczony w mkAVRcalculator więc chyba ze strony proca wszystko oki.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 mar 2020, o 18:05 
    Offline
    Użytkownik

    Dołączył(a): 25 wrz 2014
    Posty: 137
    Lokalizacja: Konin/Poznań
    Pomógł: 0

    Mam jeszcze pytanie. Mianowicie wgrywanie programu przez bootloader działa bez problemu. Natomiast jak tylko wgram program przez programator ATB USBasp to automatycznie jakby bootloader się usuwał i nawet jeśli mam ustawiony wait time - 3s to program startuje od razu, bez opóźnienia. Ktoś wie może o co chodzi ?

    ------------------------ [ Dodano po: 42 minutach ]

    Ok - już chyba mam. Gdyby ktoś miał ten sam problem należy usunąć auto kasowanie flash (komenda AVRDUDE "-D")



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 23 mar 2020, o 20:17 
    Offline
    Użytkownik

    Dołączył(a): 14 sie 2016
    Posty: 905
    Pomógł: 39

    Pomyśl logicznie, skoro wgrywasz program normalnie, to przecież nadpisujesz wszystko co było, łącznie z bootloaderem.

    _________________
    Moje porady są błędne,nie czytać,zbanować od razu.



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

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