Skocz do zawartości

Pomocna odpowiedź

Napisano

Witam,
podłączyłem pod USBasp mikrokontroler ATtiny85. Na 100% prawidłowo, sprawdzałem/rozłączałem i wpinałem kolejny raz według schematu:

http://3.bp.blogspot.com/-q8MLBaqRpbM/UZvykr8Sh1I/AAAAAAAAAuk/BX4vFsS3DF8/s1600/tiny13isp.png

Tylko, że w przejściówce 10->6

Podczas wypalania Bootloadera wywala błąd :

http://prntscr.com/e8pltp

Używam Arduino 1.0.6, ponieważ nie mogłem wgrać ATtiny na 1.8.1 Czy to może być tego wina? Szukałem tego błędu po anglojęzycznych stronach jednak nic nie znalazłem.

Pomoże ktoś? Nakieruje?

Wygląda na to, że twój attiny jest zakluczony i nie można z niego odczytać zawartości. Żeby go zaprogramować, będziesz musiał go najpierw całego skasować.

  • Lubię! 1

Skasować? W sensie jak?

Udało mi.

Wypalanie powidło się jednak zostaje informacja

"avrdude: warning: cannot set sck period. please check for usbasp firmware update."

Z tego co wiem, mam się tym nie przejmować?

C:\Users\Koorteo\Desktop\arduino-1.0.6\hardware\tiny\cores\tiny\pins_arduino.c:362: error: 'DDRD' undeclared here (not in a function)

teraz mam taki błąd, jak chce wgrać mrugającą diodę na pinie 0.

Btw. Jak wgrać do Arduino IDE 1.8.1 mikro ATtiny, skoro nie ma ich w menadżerze, a ściągnięty z

https://code.google.com/archive/p/arduino-tiny/downloads

nie widzi?

WSZYSTKO OGARNĄŁEM. DZIĘKI ZA POMOC Z PAMIĘCIĄ.

MOŻNA ZAMKNĄĆ.

ATtiny miałem ściągnięte ze strony:

https://code.google.com/archive/p/arduino-tiny/downloads

Dla Arduino Tiny for 1.5

A jak wcześniej napisałem, używam Arduino IDE 1.0.6

Zmiana na Arduino Tiny for 1.0, dało efekt końcowy, czyli wgranie programu bez problemu 🙂

Oczywiście mój błąd.

A co do pamięci to dodałem linijkę w

arduino-1.0.6\hardware\tools\avr\etc\avrdude.conf

Jest tak:(Dotyczy ATtiny85, akurat tam potrzebowałem)

 ATtiny85 has Signature Bytes: 0x1E 0x93 0x08.
    memory "signature"
        size            = 3;
        read            = "0  0  1  1   0  0  0  0   0  0  0  x   x  x  x  x",
                          "x  x  x  x   x  x a1 a0   o  o  o  o   o  o  o  o";
      ;
    memory "lock"
        size            = 1;
        write           = "1 0 1 0  1 1 0 0  1 1 1 x  x x x x",
                          "x x x x  x x x x  1 1 i i  i i i i";
       min_write_delay = 9000;
       max_write_delay = 9000;
      ;

Dodałem 2 linijki po "write"

#   ATtiny85 has Signature Bytes: 0x1E 0x93 0x08.
    memory "signature"
        size            = 3;
        read            = "0  0  1  1   0  0  0  0   0  0  0  x   x  x  x  x",
                          "x  x  x  x   x  x a1 a0   o  o  o  o   o  o  o  o";
      ;
    memory "lock"
        size            = 1;
        write           = "1 0 1 0  1 1 0 0  1 1 1 x  x x x x",
                          "x x x x  x x x x  1 1 i i  i i i i";
	 read            = "0 1 0 1  1 0 0 0  0 0 0 0  0 0 0 0",
                          "0 0 0 0  0 0 0 0  o o o o  o o o o";
       min_write_delay = 9000;
       max_write_delay = 9000;
      ;

czyli dodałem:

		 read            = "0 1 0 1  1 0 0 0  0 0 0 0  0 0 0 0",
                          "0 0 0 0  0 0 0 0  o o o o  o o o o";

No i dziękuję, że napisałeś, bo z tego wynika, że ja napisałem kompletną bzdurę, która się nijak nie ma do twojego problemu.

A możesz nam jeszcze powiedzieć skąd wiedziałeś co dopisać?

Gdy napisałeś o odczytywaniu wartości i skasowaniu. W google wpisałem "ATtiny memory lock" :

https://arduinoelectronics.wordpress.com/2012/02/19/programming-theattiny85-or-attiny45-attiny84-attiny25-attiny2313-with-arduino/

To mnie naprowadziło na dokładne rozwiązanie tego problemu. Pewnie istnieje inne rozwiązanie, szybsze, bo gdyby ktoś miał problem z innymi mikrokontrolerami to by musiał do każdego tak osobno dopisywać.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...