Źle zaprogramowane fusebity
Źle zaprogramowane fusebity
Witam. Chciałem w procesorze ATmega162 zaprogramować fusebity do kwarcu 8MHz. Skończyło się tym, że programator nie wykrywa mikrokontrolera. Da się to jakoś zresetować, powrócić do poprzedniego stanu?
Jakis czas temu w EdW opisywany byc AVR Rezurektor czy jakos tak. Uklad wlasnie resetowal fusy w AVRach. Inna metoda to uzycie programatora rownoleglego, np. AVR Dragon, ale jezeli go nie posiadasz, to zakup do resetu jednego procka mija sie z celem. Jezeli wiesz co zrobiles zle, to mozesz uruchomic procek na nowych usawieniach i przeprogramowac. Tzn. jezeli ustawiles zewnetrzny obwod RC, to podlaczasz go tak jak w nocie katalogowej i programujesz. Programator szeregowy mozna w zasadzie zablokowac na dwa sposoby:
- wylaczajac ISP (w nowych prockach z poziomu ISP jest to niemozliwe)
- wylaczajac RESET (wejscie w tryb Debug Wire lub ustawienie koncowki jako port IO)
W tych dwoch ostatnich przypadkach nic juz nie zrobisz przy pomocy programatora ISP. W zasadzie, jezeli nie ruszales Hfuse, uklad powinien byc do uratowania. Jezeli nie wiesz co ustawiles w fusach, to podaj wszystkie mozliwe zrodla sygnalu zegarowego i sprobuj przeprogramowac
- wylaczajac ISP (w nowych prockach z poziomu ISP jest to niemozliwe)
- wylaczajac RESET (wejscie w tryb Debug Wire lub ustawienie koncowki jako port IO)
W tych dwoch ostatnich przypadkach nic juz nie zrobisz przy pomocy programatora ISP. W zasadzie, jezeli nie ruszales Hfuse, uklad powinien byc do uratowania. Jezeli nie wiesz co ustawiles w fusach, to podaj wszystkie mozliwe zrodla sygnalu zegarowego i sprobuj przeprogramowac
Mnij więcej jak pisał alaris, Jeśli nie zmieniłeś ustawień Pinu reset albo ISP.
Ale zapomnij o rezurektorze to syf weź jakiś inny procek np attiny2313 napisz w w bascomie
Teraz tą nóżkę podłącz do xtal 2 (tego nie jestem pewien może to było xtal1 niepamietam)
Twojego zablokowanego procka i podepnij programator i spróbuj odczytać sygnaturę procka.
Ale zapomnij o rezurektorze to syf weź jakiś inny procek np attiny2313 napisz w w bascomie
Kod: Zaznacz cały
$regfile = "attiny2313.dat"
$crystal = 8000000
do
'tu wybierz port jaki Ci pasi
set portb.7
reset portb.7
loop
Teraz tą nóżkę podłącz do xtal 2 (tego nie jestem pewien może to było xtal1 niepamietam)
Twojego zablokowanego procka i podepnij programator i spróbuj odczytać sygnaturę procka.
Mozna kupic gotowy generator w sklepie - dołączasz +5V, mase i na kolejnym wyjsciu masz sygnal zegarowyPikczu pisze:weź jakiś inny procek np attiny2313 napisz w w bascomie
Nie miałem tego w ręce, bo pomysł budowania urządzenia za parędziesiąt pln, aby uratować procek za kilka pln jakoś mnie nie przekonuje. Niemniej czytałem gdzieś na forum (nie wiem czy tym czy innym), że układ rzeczywiście ma błędy. W tym samym miejscu było jedna napisane jak sobie z tym poradzić. Gdybyś postanowił budować rezurektora, to poszukaj dodatkowych informacji, sądzę, że Google będzie wiedział o jakim forum mówiePikczu pisze:Ale zapomnij o rezurektorze to syf
Jak już bawić się w budowanie jakiś układów do ratowania CPU, to najlepiej zrobić sobie od razu porządny programator wysokonapięciowy dla AVRów i mieć jedno urządzenie, a porządne i do wszystkiego, niż zasypywać się wcale niewiele tańszymi połówkowymi rozwiązaniami klasy "rezurektor", który tak defakto obsługuje 3-4 układy i na tym się jego użyteczność kończy.
Nie żebym tu robił jakąś anty reklamę, ale mówię z własnego doświadczenia. Lepiej raz zainwestować w dobry programator i mieć porządny sprzęt, niż 4 proste programatory i ciągle użerać sie z ich ograniczeniami. A koszt takich 4 niby tanich i malutkich układzików razem wcale mniejszy od porządnego proga nie będzie.
Nie żebym tu robił jakąś anty reklamę, ale mówię z własnego doświadczenia. Lepiej raz zainwestować w dobry programator i mieć porządny sprzęt, niż 4 proste programatory i ciągle użerać sie z ich ograniczeniami. A koszt takich 4 niby tanich i malutkich układzików razem wcale mniejszy od porządnego proga nie będzie.