jak uwalić atmegę przez ISP ?

Nastał u mnie sezon cudów...

Jest tak :

Urządzenie z atmegą 128. Programuję sobie z użyciem MkAvr Calculatora (bo wygodny), albo np. SinaProg oraz programatora USBASP.

No i od czasu do czasu zdarza się, że coś się przy programowaniu wywali, po czym oczywiście atmega przestaje dawać oznaki życia.

Ok, zatem za pomocą zestawu program + kabelek do LPT + generator 4Mhz stawiam atmegę na nogi. Znaczy resetuję fusy. (tutaj zapodany program dosowy i schemat kabelka ;

formatting link
Wracam zatem do SinaProga - atmega się zgłasza, ustawiam ponownie fusy poprawnie.

Wydaje się, że będzie OK. Ale nieeeeee - programowanie flesha wywala przy weryfikacji błędy. Programowanie eeprom - ok.

I tak sobie próbuję n-razy ten flash zaprogramować. Zawsze błąd weryfikacji. Po którymś razie - wywala się AVRDUDE, i atmega znowu wylatuje w kosmos. Znaczy fusy spieprzone.

I tak można się bawić w kółko macieju.

Mógłbym podejrzewać, że USBASP coś nie halo - ale jak wymienię atmegę na nową - będzie ok. (przerabiałem to).

Może ktoś mi to wyjaśnić ??

Reply to
sundayman
Loading thread data ...

Jeszcze spróbuję to samo z AVRDRAGON, bo mam pod ręką. Ale jakoś przeczucie mi mówi, że nic to nie zmieni...

Reply to
sundayman

A jeszcze słowo dodatkowe ;

ostatnie wywalenie zrobiłem z MkAVrCalculator, i przy programowaniu flasha miałem włączony podglad AVR DUDE.

I tenże mi wyświetlił na koniec programowania, że fusy zostały zmienione ; znaczy poprzednio była jakaś wartość (np. 3F) a teraz 00, i czy chcę przywrócić poprzednie wartości y/n.

Oczywiście dałbym Yes, ale to okienko podglądu w MkAvrCalculator nie jest responsywne, więc oczywiście dupa i atmega padła.

Ale - ważniejsze jest, że wygląda na to, że podczas programowania są czasem zmieniane wartości fusów i to jest ciekawe - dlaczego ??

Reply to
sundayman

Tak trochę offtopicznie (nie znam się na atmegach stąd pytam). Co to za problem, że atmega przy programowaniu "sie wywali"? Że jakoś specjalnie trzeba stawiać na nogi po błędnym flaszowaniu? Nie można po prostu jeszcze raz zaprogramować? Opisujesz to tak, jakby samym procesem programowania można było coś popsuć.

Reply to
Marek

No bo można. Błędne ustawienie fusów powoduje, że programowanie ISP przestaje działać.

W lepszym przypadku daje się to przywrócić przez podłączenie zewnętrznego generatora i odpowiednią operację na ISP.

W gorszym - tylko wyciąganie układu i programowanie go równoległe (w moim przypadku to bez sensu, bo atmega 128 jest TQFP 64 więc jak wylutuję, to łatwiej wstawić nową niż walczyć ze starą...)

Reply to
sundayman

Myślałem, że ISP jest podstawowym i zawsze działającym programowaniem bez względu na konfigurację.

Reply to
Marek

no niestety nie. Ale że Atmel nie zrobił jakoś prościej możliwości zerowania MCU , to imo nieporozumienie.

Oprócz ISP jest jeszcze (w mniejszych modelach) "szeregowe programowanie wysokonapięciowe", z jakąś rozsądną ilością pinów, ale duże atmegi imo mają tylko "pełne" programowanie równoległe jak ratunek, a to w przypadku procesorów TQFP jest jakieś nieporozumienie.

Jeśli się mylę, to niech ktoś wyprostuje...

Reply to
sundayman

użytkownik Marek napisał:

Nie znasz megi/tiny:) Sa 2 mozliwosci, jak ustawisz reset na IO lub wylaczysz ISP, a tak se wymyslili. Pomaga przerobka programatora i podanie na reset zamiast 5V - 12V, tak jak w picakach.

Reply to
szklanynocnik

W dniu 2014-10-09 22:22, sundayman pisze:

Być może masz za długi kabelek od programatora do mikrokontrolera lub ustawiłeś za dużą szybkość programowania. Zapnij zworkę SLOW w USBAsp i zobaczysz, czy błąd się powtarza. Ale będziesz dłuuuuugo czekać.

P.P.

Reply to
Paweł Pawłowicz

Użytkownik "sundayman" snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news:m16v4t$as6$ snipped-for-privacy@node2.news.atman.pl...

Tak chyba faktycznie w mega było. Od 5 lat używamy Xmega programowanych przez PDI. Nawet nie wiem, czy mają równoległe programowanie.

Coś im początkowo nie wyszło z progami brown-out. OIDP były inne niż w karcie katalogowej. Potem w kartę wstawili te prawdziwe, a potem coś poprawili i teraz znów są te co miały być od początku. Już się sytuacja normuje. Poruszam ten temat bo nieświadomy tego zablokowałem sobie procesor wpisując brown out np. 3V0, co faktycznie oznaczało 3V49 no i przy 3V3 procesor nie chciał gadać. Jak się zorientowałem, że to może być przyczyna podpiąłem do 3V3 w układzie zasilacz laboratoryjny i się z procesorem dogadałem. P.G.

Reply to
Piotr Gałka

Użytkownik "Marek" snipped-for-privacy@fakeemail.com napisał w wiadomości news: snipped-for-privacy@news.neostrada.pl...

Nie jestem pewien, czy nie mylę szczegółów. ISP związane jest z wykorzystaniem nogi RESET. W niektórych atmelach można tę nogę przełączyć na normalne I/O zyskując dodatkowy pin, ale wtedy przestaje działać ISP. Nawet kiedyś (z braku nóg) tak to zrobiliśmy w normalnym urządzeniu programowanym ISP. Oczywiście w trakcie pracy nad oprogramowaniem funkcjonalność tej nogi (celowo prosta bez szansy na błąd) nie była testowana. W produkcji programowanie było już jednorazowe. P.G.

Reply to
Piotr Gałka

Ciężko będzie. To wywalenie fusów zdarza się rzadko. Normalnie muszę programować z dużą prędkością, bo program zajmuje całe

128MB, i nawet "na szybko" dłuższą chwilę się ładuje, potem jeszcze weryfikacja.

Robienie tego zawsze na "slow" by mi rozwaliło pracę :)

Reply to
sundayman

W dniu 2014-10-10 18:37, sundayman pisze:

Na szybko USBAsp robił mi sieczkę przy kabelku dłuższym niż 15cm. Dragon działał na 25cm.

P.P.

Reply to
Paweł Pawłowicz

no to mój jest chyba wybitnie odporny, bo działa (no w 95% jak widać) na kabelku ok. 40 cm :)

Idę po nożyczki...

Reply to
sundayman

W dniu 2014-10-10 18:44, sundayman pisze:

Marne te programatory macie, ja mam po lpt z buforami w srodku na chyba

74hc125 i kabel ma ponad metr i działa bez problemu, używam programu ISP Adama Dybowskiego.
Reply to
janusz_k

W dniu 2014-10-11 11:03, janusz_k pisze:

Święta prawda, używałem dokładnie takiego zestawu i nie miałem problemów. USBAsp to nieporozumienie, działa jak sam chce. Teraz mam Dragona, jestem zadowolony.

P.P.

Reply to
Paweł Pawłowicz

LPT dość dawno w komputerze nie mam :) Dragona mam, ale z nim jest ten kłopot, że o ile działa pod AS, to ciężko go chyba zmusić do współpracy np. z MkAVR.

Przynajmniej u mnie nie działa. Z tego co czytałem, są problemy z sterownikami. No a skoro już mam wybierać, to wolę, żeby mi bezproblemowo działał z AS. Tyle, że AS na razie używam sporadycznie :)

A może ktoś ma doświadczenie z korzystaniem z Dragona jednocześnie spod różnych programów ?

Reply to
sundayman

W dniu 2014-10-10 18:37, sundayman pisze:

;)

Reply to
Michał Lankosz

no niestety, przy komplacji mam teraz 92%... No i dlatego nie chcem ale muszem przejść na ATXMEGE 256.

Reply to
sundayman

Rozumiem, sobota (niedziela właściwie), ale... nadal nie widzisz?:D

Reply to
butek

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.