ATmega Fuse Doctor, дальше AFD - устройство для восстановления фьюзов ATmega и ATtiny. Автор - поляк Pawel Kisielewski, его сайт на польском/английском : http://mdiy.pl/atmega-fusebit-doctor-hvpp/?lang=en
Русский перевод – Евгений из GetChip Блог
Полностью прочитать о работе, истории создания вы можете по ссылкам выше, кто на русском, кто на польском/английском. Я же хочу развенчать ошибочные мнения о вариантах схемы, плат, прошивок.
Схемы.
Есть базовая схема от разработчика с минимальным количеством слотов для пациентов :
Которая питается только от стабилизированных +12 вольт(допустимый предел 11.5...13.0), имеет выход на СОМ порт - RS232 только одну линию - ТХ - что определяет, при заливке прошивки не старше v.209, использование компьютера как индикатора выполненного действия.
Резистор R5 - ввиду того, что вы применяете светодиоды с большим током, а значит перегружаете шины РС2, РС3 - должен быть 1к0...1к2(102...122), защитные резисторы R7....R23 можно ставить от к47(470 оМ = 471 ) до 1к2(1200 оМ = 122), резистор R25 можно применять от к10 (100 оМ = 101) до к47 (470 оМ = 471).
Остальные схемы - это есть вариация на тему базовой схемы и отличаются от оной наличие двух стабилизаторов на 12 и 5 вольт, для питания от не стабилизированного источника постоянного тока напряжением 14...18 вольт. Или наличием преобразователя DC/DC при питании от USB порта (5 вольт стаб.). Подключены до двух десятков посадочных мест для пациентов, как в DIP корпусах, так и в корпусах SOICxx, так и QFNxx.
Также на вариациях могут присутствовать преобразователь уровней (МАХ232 или подобный) для работы с "железным" СОМ портом, или мосты USB - COM(СР210х, FT232RL, PL20xx и им подобные).
Схемы могут быть разведены под управляющий контроллер (ATmega8/88/168/328) в корпусах DIP-28 или QFN- 32.
Некоторое количество схем можете скачать по ссылке: Архив схем AFD
Платы
ВСЕ платы, как от автора, так и от любителей, совместимы с прошивками v.2.09, v.2.11, 2.14 Всякие слухи, что есть платы под конкретные прошивки - беспочвенные. Проблема неработоспособности той или иной прошивки на той ли иной версии платы - невнимательность, неаккуратность исполнителя.
А вот под прошивку v.2.12 от Геннадия, форум Схем.нет пока есть только одна плата, смотрите Архив ПП, папка Плата под v2.09_2.11_2_14
Доработка платы сводится к тому, что нужно перерезать дорожку от PD6(11нога) attyni2313 от BS2 и припаять перемычку с ХА1 на эту 11 ножку. Все остальные м/к лечатся при подключении от автора. Доработка касается только attiny2313. В прошивку внесены кардинальные изменения, о которых я напишу в разделе "Прошивки"
Здесь находится большой выбор печатных плат AFD: Архив ПП для AFD
Прошивки
Прошивки v.2.09 и v.2.12 от Геннадия, форум Схем.нет на ATmege8 могут работать только в симплексном режиме, т.е.передавать данные в компьютер через терминальные программы, например "Hiper Terminal"
Прошивка v.2.11 на ATmege8/88/168/328 создавалась для работы в дуплексном режиме, т.е. AFD и компьютер могут обмениваться информацией.
Всевозможные варианты прошивок, на управляющий м/к ATmega8/88/168/328: Архив прошивок AFD
Кстати, все прошивки работают на любой из предложенных плат и с любым управляющим м/к ATmega8/88/168/328, нужно только правильно сделать плату,чисто запаять, залить нужную прошивку в нужный м/с и правильно выставить фьюзы.
Вот и поговорим о фьюзах в следующим разделе.
Fuse ATmege8/88/168/328 для работы в AFD
Фьюзы, в шестнадцатеричном виде, для ATmega8 при использовании прошивок v. 2.09 и v. 2.12 такие:
FUSEBITS : ATmega8, v. 2.09 и v. 2.11, 2.14: internal 1MHz clock, EESAVE disabled:
Low: E1, High: D9, Lock: 3F
-----------------------------------------------------------------------------------------------------------------------------------------
FUSEBITS : ATmega8/88/168/328, v. 2.11, 2.14 : internal 1MHz clock, EESAVE enabled:
ATmega8 Low : 0xE1. High : 0xD1. Lock : 3F
ATmega88/168 Low : 0x62. High : 0xD7. Ex : 0xF9. Lock : 3F
ATmega328 Low : 0x62. High : 0xD1. Ex : 0xFF. Lock : 3F
EESAVE – защита EEPROM от стирания.
При подаче команды полного стирания микроконтроллера (обычно осуществляется при каждом программировании кристалла) стирается и EEPROM. Если Вы хотите чтобы EEPROM оставалось нетронутой – активируйте этот фьюз. Это актуально если в EEPROM хранятся важные данные.
EESAVE = 1 – стирать EEPROM вместе с Flash;
EESAVE = 0 – оставлять EEPROM при очистке нетронутым.
С шестнадцатеричным представлением фьюзов разобрались, а теперь перейдём к "галочному". Ведь большинство повторяющих ту или иную конструкцию не вникает в то, что представляет каждый бит фьюзов, а выставляют "галки" по приведённым картинкам. Вот и я дам несколько картинок как выставить фьюзы "галками" в нескольких софтах программаторов. Напоминаю, что для прошивок v.v. 2.09 и 2.12 оставляем фьюзы заводские, а вот для прошивки v.2.11 нужно менять.
Итак начнём:
Прошивка v.2.11, м/к ATmega8, программатор USBasp_AVRDUDE_Prog.
Прошивка v.2.11, м/к ATmega8, программатор Khazama AVR Prog.
Прошивка v.2.11, м/к ATmega8, программатор ProgISP.
Прошивка v.2.11, м/к ATmega8, программатор AVRDUDESHELL.
Прошивка v.2.11, м/к ATmega8, программатор Willem.
Прошивка v.2.11, м/к ATmega8, программатор AVRDUDEESS2_4_avrdudess_v_6_4
Очень хорошая статья о фьюзах, с примерами, на русском, находится в: Fuse
Инструкции по работе со всеми версиями прошивок: Инструкции по работе
Теперь у вас есть вся информация по самостоятельной сборке и работе. Успехов!!!
А кто ленится сам собирать, тогда милости прошу сюда: ATmega Fuse Doctor - реализация.
Вопросы приветствуются.
|