Anek40 0 Napisano 12 listopada (edytowany) Wgrałem do Attiny 2313A poniższy kod ,gdy chciałem go skasować poleceniem erase nie skasował się ten kod,mimo kilku prób skasowania. Miałem to samo na Attiny 13A ,ale po kilku próbach dania erase,i wyłączenia włączenia komputera, program się skasował,odzyskałem tą Attiny13A. Czy da rady odblokować tą Attiny 2313A ? jak ? kod: #include <avr/io.h> #include <util/delay.h> #include <inttypes.h> #include <util/atomic.h> #define CLKDF_1 (0<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) #define CLKDF_2 (0<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(1<<CLKPS0) #define CLKDF_4 (0<<CLKPS3)|(0<<CLKPS2)|(1<<CLKPS1)|(0<<CLKPS0) #define CLKDF_8 (0<<CLKPS3)|(0<<CLKPS2)|(1<<CLKPS1)|(1<<CLKPS0) #define CLKDF_16 (0<<CLKPS3)|(1<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) #define CLKDF_32 (0<<CLKPS3)|(1<<CLKPS2)|(0<<CLKPS1)|(1<<CLKPS0) #define CLKDF_64 (0<<CLKPS3)|(1<<CLKPS2)|(1<<CLKPS1)|(0<<CLKPS0) #define CLKDF_128 (0<<CLKPS3)|(1<<CLKPS2)|(1<<CLKPS1)|(1<<CLKPS0) #define CLKDF_256 (1<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) #define CLKDF_512 (1<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) #define CLKDF_1024 (1<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) #define CLKDF_2048 (1<<CLKPS3)|(0<<CLKPS2)|(0<<CLKPS1)|(0<<CLKPS0) void clock_prescaler_select(uint8_t division_factor); int main(void) { DDRB = (1<<PB3)|(1<<PB4); PORTB|=(1<<PB3); while(1) { clock_prescaler_select(CLKDF_1024); //ustaw preskaler F_CPU na 1024 //czyli praca z 4MHz for (uint8_t i=0;i<20;i++) { _delay_ms(4000); //okres migania diody LED ok. 64s PORTB ^= (1<<PB3)|(1<<PB4); } clock_prescaler_select(CLKDF_1024); //ustaw preskaler F_CPU na 8 //czyli praca z 1,2MHz for (uint8_t i=0;i<20;i++) { _delay_ms(4000); //Okres migania diody LED ok. 64s PORTB ^= (1<<PB3)|(1<<PB4); } } } void clock_prescaler_select(uint8_t division_factor) { ATOMIC_BLOCK(ATOMIC_RESTORESTATE) { CLKPR = (1<<CLKPCE); CLKPR = division_factor; } } Edytowano 12 listopada przez Anek40 Cytuj Udostępnij ten post Link to post Share on other sites
RFM 46 12 listopada Program nie zablokuje (pomijam rzadko spotykane w sytuacji małych uC bootloadery) ale złe ustawienie fuse tak. Jak został włączony DW to bez programatora HV nic nie da się zrobić Albo RST DISABLE Cytuj Udostępnij ten post Link to post Share on other sites
atMegaTona 88 12 listopada 4 godziny temu, Anek40 napisał: Miałem to samo na Attiny 13A ,ale po kilku próbach dania erase,i wyłączenia włączenia komputera, program się skasował,odzyskałem tą Attiny13A. To zacznij od wymiany kabelka od programatora albo spróbuj go poprawić, wyraźnie coś nie łączy lub co gorzej łączy niepoprawnie. Jeśli nie kombinowałeś nic c lock bitami to nie powinno się nic zablokować. Cytuj Udostępnij ten post Link to post Share on other sites
Anek40 0 12 listopada (edytowany) Inne Attiny 2313A działają,boję się wgrać ten program do innej Attiny2313a i innych uC aby nie uwalił tak jak tą Attiny 2313A. Program na tej uwalonej Attiny działa,tylko nie da się skasować , Program mkAVR nie widzi tej Attiny. Gdzie można kupić programator programatora HV ,ile kosztuje. RFM napisał :" Jak został włączony DW " ,co to znaczy. RFM napisał :"Albo RST DISABLE": co to znaczy Edytowano 12 listopada przez Anek40 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Szukasz producenta PCB?Sprawdź przetestowaną firmę JLCPCB. Dlaczego warto? • Prototypy PCB za 2$ (gotowe w 24 godziny) • Kody zniżkowe dla nowych klientów (po rejestracji) • Produkcja w profesjonalnej fabryce (zobacz film) Sprawdź też » Jak powstaje PCB? Wycieczka po fabryce
BananWszyscy 1 17 listopada (edytowany) Dnia 12.11.2019 o 22:20, Anek40 napisał: RFM napisał :" Jak został włączony DW " ,co to znaczy. RFM napisał :"Albo RST DISABLE": co to znaczy DW to pewnie chodzi o debugWire - punkt 18 w dokumentacji attiny. RST DISABLE to też taki bit, który można tak ustawić, że nie ma resetu (jak sama nazwa wskazuje :D) (w załączniku) Ale pewnie z fusebitami się nie bawiłeś. Skoro program się wykonuje to jak zrobisz reset (zwierasz ten pin tak jak guzik) to program się resetuje? + czy program się wykonuje tak jak powinien? Może taktowanie gdzieś przekręciłeś Edytowano 17 listopada przez BananWszyscy Cytuj Udostępnij ten post Link to post Share on other sites
Anek40 0 17 listopada Program działa poprawnie , program nie chce się skasować (erase) ,Attiny 2313A niechce się erase . Program mkAVRCalculator ,nie wykrywa Attiny 2313A. Podaję obrazki co pokazuje Extreme burner i progisp. Który pin zewrzeć (jaki numer) i do czego ,do innego pinu ? (jaki numer) i zewrzeć na jak długo ?. Cytuj Udostępnij ten post Link to post Share on other sites
BananWszyscy 1 17 listopada (edytowany) Z tego co pamiętam, to na resecie jest podciągnięcie na stan wysoki, czyli trzeba go zewrzeć do masy, żeby zresetować uc Czyli wg załącznika 1 z 10. Edytowano 17 listopada przez BananWszyscy Cytuj Udostępnij ten post Link to post Share on other sites
Anek40 0 17 listopada (edytowany) Jak długo trzeba mieć złączone pin 1 z pin 10 Jak połączę pin 1 z pin 10 to programu nie ma , i nie daje się erasetować przy złączonych 1 i 10 i rozłączonych. Jak odłączę od siebie 1 i 10 to program znowu się pojawia i nie można go zmazać erasem. Edytowano 17 listopada przez Anek40 Cytuj Udostępnij ten post Link to post Share on other sites
Anek40 0 17 listopada (edytowany) Chip chip Hura !!!! hura !!! udało się odblokowałem Attiny 2313A ,wielkie dziękiuję dla RFM i BananWszyscy. Atiyny się dała erastować i wgrać inny program. Za drugim razem zrobiłem to inaczej jak za 1 razem i być może dlatego się powiodło. I teraz pytanie czy ten program zablokował Attiny? Proszę o poradę jak to zrobić z Atmega 328P i Atmega 8A ,Attiny 13A Edytowano 17 listopada przez Anek40 Cytuj Udostępnij ten post Link to post Share on other sites
BananWszyscy 1 18 listopada (edytowany) Skoro program się zatrzymywał i się włączał ponownie od początku po rozwarciu to znaczy, że reset działał, bo jak zwarłeś te piny i zostawiłeś to się ciągle resetował. Powiedz co zrobiłeś inaczej za drugim razem + sprawdź, czy przy podłączeniu programatora na pinie resetu masz 5V Edytowano 18 listopada przez BananWszyscy Cytuj Udostępnij ten post Link to post Share on other sites
Anek40 0 18 listopada (edytowany) Na pinie 10 i 1 ,jest 4.70 Volt i to się waha raz w górę raz w dół. Udało mi się przez przypadek ,za pierwszym razem robiłem to przy włączonym komputerze kilka razy bez rezultatu. Zniechęcony wyłączyłem komputer poszedłem spać. Rano myślę spróbuje znowu,zwarłem styki 1 i 10 ,włączyłem komputer ,przy zwartych pinach dałem erase i się skasowało. Czyli chyba trzeba wyłączyć komputer z sieci około 220 Volt ,aby się powiodło. Mam nowy problem i proszę o pomoc,kilka miesięcy temu zablokowałem Attiny 2313A chyba poprzez danie fusybitów na wewnętrzny oscylator 128KHz podzielony wewnętrznym podziałem zegara przez 8. Czy można ją odblokować ,jak ? Edytowano 18 listopada przez Anek40 Cytuj Udostępnij ten post Link to post Share on other sites
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay