ATTINY13A с завода - обычный ISP вам не поможет

Закупил летом кучу чипов ATTINY 13A на ebay, часть в SU (200 mil) исполнении, часть в SSU (150 mil). С SU (в трее) проблем не возникло, а вот SSU (в ленте) отказались распознаваться обычным китайским USBASP программатором. Перепробовав всевозможные настройки, решил опробовать высоковольтное программирование чтобы попробовать сбросить fuses.
Как обычно это бывает — программировать в таком режиме было нечем.
Полистав полчаса гугл, остановился на самом простейшем для меня варианте (нужна ардуино-совместимая плата).

Что менял под себя:
1) транзистор заменил на 2N2222 (так как были в наличии)
2) 12В подал с лабораторного блока
3) чипы лепил на soic-dip переходник

Перешил на пробу 3 чипа. Все оказались с заводскими fuses: FF FC вместо FF FF
Все ATTINY13A в SSU исполнение, купленные до этого внутри страны, были с обычными fuses (FFFF).

На будущее заказал пару OTS socket для программирования SOIC8/16 т.к. прижимать или припаивать каждый чип нереально.
Что любопытно — на ebay такие socket'ы отдельно стоят всегда дороже (в разы), чем уже припаянные на платки (видимо налепили для каких-то программаторов, которые уже никому не нужны).

Комментарии (15)

RSS свернуть / развернуть
Как человек, складывающий закирпиченные tiny13/45 на полку, я требую грязных подробностей!
По ссылке код и схема под ардуину?

Попадался, вроде еще проще метод: две тиньки (кирпич и нормальная) одевались одна на другую, на reset кирпича подавалось высокое напряжение, с ПК давалась команда прошивки фьюзов.
0
  • avatar
  • igorp
  • 28 октября 2014, 18:25
Я на беспаечной макетке и ATtiny2313 собирал разлочку фузов, и разблокировал 3 ATtiny13 с китая. Разлочка прошла успешно. Покупал у другого китайца 10 ATtiny13, они работали штатно через ISP и не требовали разлочки.
Вывод — разные продавцы. Скорее всего, залоченные тиньки продают в качестве остатков от партии заказных девайсов, и фуз SPIEN там заведомо убирали. ATtiny13 купленные в россии, тоже штются на ура через ISP.
+1
ещё иногда очень важно, чтобы была включена опция «Slow SCK» на USBasp'е
0
В данном случае slow sck вообще не влияло никак.
0
Может, все же RSTDSBL? У тини13 вроде кроме SPI интерфейсов программирования нет.
0
У тини13 есть и RSTDSBL и SPIEN, так что бог его знает. Одно известно точно- продаются не с заводскими фузами. По сути тема теряет смысл.
0
Да, на 2313 есть нормальный fuse reseter, но этот вариант быстрее и проще было слепить.
Продавец проверенный (по крайне мере пока откровенный левак от него не получал), а цена была сама низкая на ebay.
0
Продавец вам рабочие МК прислал, к нему нет претензий. А вот конфиг фузов при покупке не оговаривается.
0
Ну у меня и нет претензий :)
0
Да под arduino. Просто лежали пару плат давно без дела, заодно решил проверить живые или нет :)
0
мне тут намедни пришла партия мег 328Р с фьюзами не стандарту. Удивило, что судя по фьюзам МК по умолчанию должен был тактоваться от внешнего тактового генератора, но по факту работал от внутреннего RC на 8МГц. Ну и в дальнейшем оказалось, что эти МК мрут через раз по невыясненым причинам, просто работают, и потом умирают, не подавая никаких признаков жизнь. Так что теперь я из китая подобные вещи водить не буду, хотя цена в 20р за 1шт очень вкусна оказалось, но по факту геморроя дала мама не горюй.

З.Ы. сейчас приехала партия с фарнела, по цене 1,5 евро за чтуку, и всё стало хорошо. -
0
по умолчанию- от внутреннего генератора
0
так это то понятно:) НО! чиселка в фьзах соответствовала тому, что МК настроен на тактовку от внешнего генератора, даже не кварца а именно генератора. А работало от внутреннего:) Короче китайские опыты по травлению на кремнии хлорным железом:)
0
!!!!! помогло только с поправкой:
добавил
writeFuse(LFUSE, 0xFF);
writeFuse(HFUSE, 0xFF);
перед
writeFuse(LFUSE, 0x6A);
writeFuse(HFUSE, 0xFF);

Купил на ебае десяток ATTINY13A ни какими программаторами не видятся, ни какими fuse doctor не восстанавливаются (жаль много

времени на это всё потратил). Добивал из принципа. Мне помогла ранняя разработка этой схемы на arduino, по случайности, по

ошибке перепутал hfuse lfuse ff 6a, только после этого fuse поменялись, потом заменил значение как надо, и о чудо! fuse

встали как надо. Теперь переделал на эту программу (что и указал выше). Теперь тиньки видятся всеми программаторами.
Предполагаю, что китайцы использовали другой тип памяти для fuse, и чтобы его переписать, его сначала надо затереть в FF.

Видимо мне попались совсем корявые значения
у косячных LFuse: 79, HFuse: F8 (никак не хотели меняться на правильные)
после замены на LFuse: FF, HFuse: FF, затем уже на 6A, FF
встали правильные LFuse: 6A, HFuse: FF
УРА!!! ВОССТАНОВЛЕНИЕ FUSE ATTINY13A!
0
И есть ешё один вариант (немного другой код, ему по зубам оказались все остальные 13е тиньки), который помог ещё больше, ужо совсем китайских ATTINY13A реанемировать, Arduino AVR High-Voltage Serial Programmer хотя от того-же числа www.rickety.us/2010/03/arduino-avr-high-voltage-serial-programmer/

скетч поправил: с учетом промежуточной записи FF FF.
получился длинный код, поэтому выложил здесь:
yadi.sk/d/PL-Mgw1UgRfSv
0
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.