kemot55 napisał: Czytam to co napisałeś i nie bardzo mi to wszystko pasuje. Raczej przy takich "fusach" nie powinno się dać odczytać programu. Sprawdź plik po odczycie czy tam jest rzeczywiście Twój program a nie np. kolejne wartości bajtów 0,1,2,3...255 i od początku.
I jeszcze jedno-spróbuj obniżyć szybkość zegara programatora (jak najwolniej). Kiedyś obserwowałem zjawisko polegające na zgłoszeniu po wykonaniu jakiejś operacji (chyba właśnie kasowanie) przez podobny programator (prog. po SPI nie JTAG) ALL OK i nic więcej! Wtedy miałem problem ze zaśmieconą linią zegara.
Spróbowałem obniżyć prędkość JTAGa - to samo - nic się nie zmieniło poza czasem przesyłania programu. ALE! Zauważyłem dzisiaj dość dziwną rzecz która może pomóc - kiedy odłącze układ od programatora i podłączego go ponownie - LockBity i Fusy są czytane tak jak powinny być ustawione (choćbym naciskał Read kilkaset razy). Natomiast (i tu ciekawe) kiedy próbuje cokolwiek zapisać do kontrolera (czy to FuseBity, czy LockBity czy też program) to po takiej operacji gdy próbuje odczytać LockBity - znów się ustawiają na blokadę. Dziwne, nie?
Co do zawartości programu... po jego odczytaniu widzę coś takiego (i tu chyba miałeś rację - to nie jest program tylko zbiór śmieci):
:1000000000000000000000000000000000000000F0
:1000100000000000000000000000000000000000E0
:1000200000000000000000000000000000000000D0
:1000300000000000000000000000000000000000C0
:1000400000000000000000000000000000000000B0
:1000500000000000000000000000000000000000A0
:100060000000000000000000000000000000000090
:100070000000000000000000000000000000000080
:100080004040404040404040404040404040404070
:100090004040404040404040404040404040404060
:1000A0004040404040404040404040404040404050
:1000B0004040404040404040404040404040404040
:1000C0004040404040404040404040404040404030
:1000D0004040404040404040404040404040404020
:1000E0004040404040404040404040404040404010
:1000F0004040404040404040404040404040404000
:1001000080808080808080808080808080808080EF
:1001100080808080808080808080808080808080DF
:1001200080808080808080808080808080808080CF
:1001300080808080808080808080808080808080BF
:1001400080808080808080808080808080808080AF
:10015000808080808080808080808080808080809F
:10016000808080808080808080808080808080808F
:10017000808080808080808080808080808080807F
...
:00000001FF
Dodano po 3 [godziny] 1 [minuty]:
Właśnie przed chwilą zablokowałem drugą ATMegę (ostatnią jaka mi została

. Wiem co było przyczyną. W trakcie pracy układu obniżyłem a następnie podniosłem napięcie do 6V. Wprawdzie układ jest najprawdopodobniej fizycznie sprawny, to ponoć (z tego co znalazłem w angielskiej sieci) zdarzają się problemy z loaderami lub jakimiś jeeper'ami (ang. jeepers) (co to jest?) tych układów - z reszta przytoczę cytat:
Cytat: I unlocked quite a few by just doing a factory default. Write the files using jeepers.
Moje pytanie do Was - co to są jeepery i czy może być uszkodzony loader? Jak zrobić to o czym pisze angielski kolega (przywrócenie ustawień domyślnych i zapisanie plików przy użyciu jeeperów)?
Co do loadera - skąd mogę go wziąść i jak go przenieść do ATMega16 przez JTAG? Dzięki wielkie z góry.