Войти Регистрация

Войдите в свой аккаунт

Логин *
Пароль *
Запомнить меня

Создать аккаунт

Поля, отмеченные звездочкой(*) обязательны.
 
Суббота, 01 января 2011 20:31

"РЕАНИМАТОР" для AVR.

Оцените материал
(1 Голосовать)
"РЕАНИМАТОР" для AVR. - 5.0 out of 5 based on 1 vote

Автор - Черняков Сергей.
Опубликовано 09.09.2009.

В данной работе описывается конструкция параллельного программатора, единственной задачей которого является восстановление значений фьюзов микроконтроллера "по умолчанию", т.е. записанных на заводе. К достоинствам прибора следует отнести его простоту, автономность (независимость от ПК), а также возможность постоянно модернизировать и усовершенствовать, в зависимости от поставленных задач. Недостатком является, пожалуй, необходимость задействования достаточно большого количества линий связи с микроконтроллером, но иначе нельзя, ведь это - параллельное программирование.

Идея разработки этого устройства родилась после ошибочной записи значений фьюзов в ATmega8, после которой вывод сброса стал обычным вводом/выводом порта, синхронизация предусматривала внешний источник, да ещё и запрещалось программирование по SPI - короче говоря "полный набор". Поиск схем параллельного программатора по интернету и в печати не дал практически ничего, что удовлетворяло бы заданным условиям простоты и повторяемости. После изучения соответствующих даташитов решено было разработать устройство на одном микроконтроллере, которое восстанавливало бы значения фьюзов, необходимые для работы на обычном последовательном программаторе. Вообще-то, честно говоря, параллельный программатор больше ни для чего и не нужен в любительском конструировании - все функции программирования успешно выполняют широко распространённые последовательные "5 проводков", "STK-200", "AVR910", "usbasp" иже с ними.
Итак, задача поставлена - ищем решение. Начинаем, конечно, с выбора контроллера. Для параллельного программирования необходимо иметь как минимум 19 выводов ( см. таблицу).

1

Восьмивыводные кристаллы сразу отпадают. Можно, открывая ключи +5В и +12В от одного вывода, использовать 18 линий- в этом случае появляется возможность использовать 20-ти выводные корпуса, ATtiny2313, например. В своей же конструкции я использовал ATmega8515, исходя исключительно из удобства расположения портов (на одной стороне) и линий питания - всё для упрощения разводки печатной платы. Можно применить и 28-ми выводные контроллеры, но я изначально планировал последующее подключение LCD-индикатора и 4-х кнопочной клавиатуры. А, в принципе, собрать устройство можно на любом имеющемся кристалле с необходимым количеством выводов - длина кода - 330 байт.
Кроме того, для коммутирования напряжений питания 5 В и программирования 12 В необходимы соответствующие ключи. Изобретать велосипед я не стал, и использовал широко известное схемное решение в виде транзисторного ключа.
Как и в любой диалоговой системе необходимы устройства ввода и вывода - добавляем, соответственно, кнопку и светодиод.
В результате родилась схема, представленная на рисунке:

Схема, как вы видите, проста до безобразия и особых разъяснений не требует. Единственное, что вызовет определенные конструктивные затруднения - это подключение программируемых контроллеров к программатору. Можно это сделать, например, коммутацией проводниками на макетной плате, а можно (и гораздо удобнее) собрать универсальную плату расширения для основных типов контроллеров (или для тех, с которыми постоянно работаешь), подключаемую к программатору шлейфом.
Питать устройство необходимо от стабилизированного источника 12 В. На микросхеме IC1 собран стабилизатор напряжения питания 5 В. Кнопка SA1 "PROG"- даёт команду на перезапись фьюзов, светодиод зелёного свечения VD1 "DONE" - сигнализирует об успешном перепрограммировании. На транзисторах VT1 - VT4 собраны ключи для коммутации напряжений питания и программирования. Сразу оговорюсь, что схему можно совершенствовать сколько душе угодно. Допустим, установить стабилизатор на 12 В - в этом случае можно питать устройство от нестабилизированного источника 16-22 В. Возможно заменить транзисторные ключи на микросхему коммутатора тока и пр.
Конструкция программатора может быть любой - в зависимости от Ваших возможностей и умения. Я сам программатор сделал на печатной плате, а программируемые микроконтроллеры подключал через макетку. В дальнейшем планирую сделать универсальную плату расширения и подключать к программатору 20-ти жильным шлейфом. Детали любые малогабаритные, номиналы указаны на схеме.
Пару слов о программной части. Программа написана на языке С в оболочке WinAVR. Порядок действий в ней полностью соответствует даташиту ATmega8 (раздел о параллельном программировании).
Работать с программатором очень просто. Контроллер, в котором необходимо переписать фьюзы, вставляется в соответствующую панельку. Включается питание и нажимается кнопка "PROG". Загоревшийся светодиод "DONE" сигнализирует об успешной перезаписи. Питание выключается и, после изъятия из панельки, контроллер используется обычным способом.
В своей конструкции я подключал к программатору, кроме панели для ATmega8 ещё панель для ATmega16, поскольку алгоритм программирования для него почти такой же и прошиваемые значения фьюзов позволяют работать с последовательным программатором. В результате устройство даже в такой представленной "игрушечной" версии успешно "реанимирует" кроме ATmega8 ещё и ATmega8535, ATmega16, ATmega32 - это то, что я лично пробовал перепрограммировать
В дальнейшем я планирую дополнить программатор некоторыми функциями, расширить номенклатуру "реанимируемых" контроллеров. В планах добавить функцию считывания байта сигнатуры и, в зависимости от типа контроллера, прошивать его своими "даташитовскими" значениями. А, вообще, приведённых сведений более чем достаточно, чтобы пользователь мог сам модернизировать программатор - хоть в схемной, хоть в программной части.

Источник

Прочитано 15052 раз

Добавить комментарий


Защитный код
Обновить

Комментарии   

aleks0306
0 #3 aleks0306 25.09.2013 08:34
getchip.net/.../... Сам собирал работает
Цитировать
RA_DU_GA
0 #2 RA_DU_GA 18.08.2013 03:26
А зачем??
Заюзайте ту же мегу 8 - это дешевле))
К тому же, если захотите дальше "вкусности" ввиде индикатора, клавиатуры и т.п....
Цитировать
N_kolay
0 #1 N_kolay 29.03.2011 09:10
хочу тоже самое но на attiny2313 но также для атмега8
Цитировать
Инвентарная сварка

Сварочный инвертор COLT 1300.

Cхема сварочного инвертора COLT 1300 итальянской фирмы CEMONT. В архиве схема, журнал с…

Журнал Радиоаматор №10 2011

Название: Радиоаматор Год издания: 2011 Издательство: РадiоАматор Номер: 10 Страниц: 66…

ТРИ ПРОСТЫХ ПРИМОЧКИ ДЛЯ АВТОМОБИЛЯ ВАЗ 2114 SAMARA

В этой теме представлены три несложных и полезных устройства для легкового автомобиля.…
scr-12

Журнал Радио 2011 №12

Название: Радио №12 2011Год: 2011Номер: 12Язык: русскийСтраниц: 68 + цв.обложка +…
Радио 77

Видео отчет сборки трансивера 60-х годов

Доброе время суток! В данной статье буду добавлять частями видео обзора сборки трансивера…

РАДИОЛЮБИТЕЛЬСКИЙ ТЕЛЕФОННЫЙ ИНФОРМАТОР

Информатор предназначен для передачи речевого сообщения по телефонной линии звонящим…

АДАПТЕРЫ ДЛЯ ЗАПИСИ ТЕЛЕФОННЫХ РАЗГОВОРОВ

В общем-то, сама по себе тема не нова, но просмотр радиолюбительских и профессиональных…

Говорящие часы на счетчиках K176ИE12 и чипкордерах ISD17240PY

В теме рассмотрены электронные говорящие часы, в схеме которых секундные, минутные и…
 

ban240x130

Топ

ТЕЛЕФОННАЯ…

Приставка-спикерфон предназначена для громкоговорящей телефонной связи. Занятие линии АТС…

Управление…

Автор разработал программу и устройство для управления различными электро и…

Ветрогенератор для…

Как работает ветрогенератор ? Работа любого ветрогенератора, независимо от того, снабжает…

Импульсный…

Импульсный преобразователь сетевого напряжения Применение импульсного преобразователя…

Импульсный блок…

Импульсный блок питания 180Вт Мощность блока питания — около 180 Вт, выходное напряжение…
Изображение по умолчанию

Эмулятор ключей…

Назначение. Устройство предназначено для считывания, хранения и эмуляции ключей домофонов…
Изображение по умолчанию

Цифровой…

Цифровой вольтамперметр предназначенный для установки в блок питания для отображения…
Изображение по умолчанию

500 схем для…

1. 500 схем для радиолюбителей. Приемники2. 500 схем для радиолюбителей. Усилители…
Изображение по умолчанию

Вольтамперметр на…

Идеологом этой схемы является вот этот вариант http://avr.4mg.com/custom4_1.html захотел…

ИНДИКАТОР УРОВНЯ…

Принципиальная схема индикатора показана на рисунке. Эта схема использовалась для…

Голосовой монитор…

Голосовой монитор (далее – монитор) предназначен для контроля телефонной линии или…

ТАЙМЕР, УПРАВЛЯЮЩИЙ…

В теме представлено таймерное устройство, управляющее освещением багажника ВАЗ-2114, но…

Авторизация