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



Teraz jest 28 mar 2024, o 14:38


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: 759
Pomógł: 37

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: 759
Pomógł: 37

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: 27212
Lokalizacja: Szczecin
Pomógł: 1041

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: 27212
Lokalizacja: Szczecin
Pomógł: 1041

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: 2561
Pomógł: 126

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: 2561
Pomógł: 126

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: 2561
Pomógł: 126

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: 2561
Pomógł: 126

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: 2561
Pomógł: 126

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: 2561
Pomógł: 126

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 4 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