


Я не претендую на профи в этом деле

Первым делом –программатор. Стоит подумать перед покупкой-зачем он Вам? Прошить 2-3 контролера в месяц? Глупо! Нет LPT порта,нет COM порта? Прошить можна и на другом компе. Ну а если очень захотелось крутой программатор-Ваше дело. (Блатная жизнь-нелегкая!) Тут каждый принимает решение сам. Мой совет-набираете в GOOGLЕ-программатор Громова или программатор на MAX232-информации немерено! Паяльник в руки-10-15мин. И он у Вас есть. Попробуете поработать с контролерами,понравится,заработаете свой первый миллион-купите себе суперновый навороченный

Процессор можно прошивать как на панельке так и внутрисхемно. Но ему необходимо питание-в основном 5В,иногда можно прошивать и при штатном питании(незнаю,непробовал-брехать небуду) Я думаю с этим проблем нет,трансик,кренка,кондерчик-хватит. Следите за правильностью подключения проца к программатору и питанию! У каждого автора схемы,программы и в целом девайса распиновка под программатор своя. Рекомендуется сначала подключать минус питания для уравнивания потенциалов.
Теперь нам нужна программа для прошивки микроконтроллера. Опять-же,нам нужна простая программа,нам нужно просто залить готовую прошивку в микроконтроллер. Варианты поковырятся в готовой прошивке-эт для людей знающих! И тут обращаемся к великому Гуглю. Тут опять-же на вкус и цвет-товарищей нет. Algorithm Builder, UniProf, PonyProg, AVR Studio, Code VisionAVR, SinaProg-выбираем,качаем,устанавливаем,изучаем,что непонятно-GOOGL рулит!!!
Подключаем все это дело-комп,программатор,контролер. В выбранной и установленной проге устанавливаем связь с программатором,подаем питание-если ничего не дымит значит пока живем!!! При запуске программы определяется контролер,если не определился-выбираем вручную.
Теперь о прошивках-они у нас в основном в двух видах,НЕХ-заливается во FLASH,EEP-заливается в EEPROM. Впрочем-непопутаете!
Я не писатель,немного устал-теперь кратко о сути.
ФЬЮЗЫ!!! Тут максимум внимания!!! Автор может изменить алгоритм работы контролера-частоту,защиту,внутренний,внешний генератор-в общем может быть беда! Если автор прошивки не меняет фьюзы-хорошо,Вы тоже их не трогаете,если есть изменения-просите огласить какие изменения(ниже будут «разложены» фьюзы) или просите скиншот,при этом обращаете внимание в какой среде автор прошивает контролер. Спросите почему? Потому что программы по разному отмечют «активен» и «не активен»,у одних галочка стоит когда-«активен»,у других наоборот.Здесь чаще всего косячат :!: :!: :!: !!!
Рекомендую перед прошивкой сначала считать Ваш контролер(почему-увидите ниже),определится с фьюзами,как они стоят и как Вам их нужно установить. Каждая программа делает это по разному,внимательно изучите сей момент!!! Потом прошить его ,потом проверить прошивку(считать),а уже потом подбиратся к фьюзам. Помните- у PonyProg и AVR Studio значение «активен» и «не активен» абсолютно противоположено программам Algorithm Builder и UniProf !!!
Значение или назначение некоторых фьюзов:
SPIEN – разрешение на последовательное программирование. Нетрогать! Табу!
DWEN – бит, разрешающий работу DebugWire Нетрогать! Табу!
RSTDISBL –разрешает использовать ножку Reset как еще один порт ввода-вывода Нетрогать! Табу!
Lock Bit Byte – лок биты для защиты программы от копирования
CKSEL – выбор тактового генератора для микроконтроллера
CKSEL0– Внешний тактовый сигнал;
CKSEL1 – Внутренний тактовый генератор – частота 4 МГц;
CKSEL2 – Внутренний тактовый генератор – частота 8 МГц;
Если Вы выставили фьюзы на внешний генератор, а его нет, то придется припаять кварц к соответствующим ножкам или подать тактовые импульсы.
CKOUT – разрешает вывод тактовой частоты на ножку CLKO микроконтроллера
CKOPT – задает размах тактового сигнала на внешнем генераторе.
SCKDIV8 – деление тактовой частоты на 8
SUT – задает скорость запуска микроконтроллера
BODLEVEL и BODEN – контроль напряжения питания микроконтроллера (Brown-out Detector).
EESAVE – защита EEPROM от стирания
Lock Bits – Это отдельный фьюз байт который предназначен для защиты области программ и/или EEPROM от копирования. Полное стирание восстанавливает эти биты в исходное состояние.
Еще раз повторюсь, это не полный перечень фьюз бит, для каждого конкретного микроконтроллера смотрите даташит.
Общий алгоритм установки фьюз бит должен быть следующим:
- прошиваем Flash и, если нужно, EERROM;
– открываем окно прошивки фьюзов, считываем текущие фьюзы микроконтроллера;
– модифицируем только те фьюзы которые нам нужны;
– обращаем внимание на критичные для последовательного программирования фьюзы RSTDISBL, SPIEN, др.
Ну в общем вроде бы все что мог(или на что хватило задора)написал-звиняйте что не так!
Милости просим! Добавляем информацию,дополняем,делимся,спрашиваем! Кстати(дабы не считали таким вумным) все в свое время подчерпнул сдесь-Здеся! Замечены неточности -укажите-исправлю!