СХЕМА.RU - Радиолюбительский портал » Файлы » Микроконтроллеры AVR для начинающих - 3

Микроконтроллеры AVR для начинающих - 3

7-09-2012, 18:57 От: admin Посмотрели: 4346

Микроконтроллеры AVR для начинающих - 3


В предыдущей части статьи я рассказывал про прошивку МК с помощью программы PonyProg, теперь расскажу как прошить с помощью CodeVision AVR (далее CVAVR). Честно говоря, работа в программе не сильно отличается от PonyProg.

Для начала можете микроконтроллер поставить в панельку программатора, и подключить его к LPT порту, затем подавайте питание.

Запускаем программу CVAVR

CodeVision AVR

1) Сначала нам нужно настроить порт, заходим в меню Settings -> Programmer.

CodeVision AVR

Откроется окошко, все настройки выставляем  как на рисунке ниже

CodeVision AVR

2) Нажимаем ОК, далее заходим в меню Tools -> Chip Programmer

CodeVision AVR

Откроется следующее окно:

CodeVision AVR

Ничего лишнего в этом окошке не трогаем, галочки не ставим и ничего не переключаем.

3) Выбираем нужный нам микроконтроллер из выпадающего меню, я выбрал ATmega8. Если у вас в названии микроконтроллера после ATmegaX стоит буква, к примеру V или L,  то в списке выбирайте такой же МК, с такой же буквой.

4) Теперь нам нужно открыть файл прошивки, в этом окошке нажимаем File -> Load FLASH

CodeVision AVR

5) Откроется окно, где нужно будет выбрать файл прошивки с расширением .hex, кстати, не забудьте внизу из выпадающего меню "Тип файлов" выбрать этот тип файла.

CodeVision AVR

6) Файл EEPROM выбираем точно так-же, для этого нажимаем меню File -> Load EEPROM, расширение этого файла .eep, если к вашему проекту такой файл не прилагается, значит нужно прошивать только FLASH т.е. .hex.

Имейте ввиду, что процессы прошивки программы, фьюзов
и ПЗУ (EEPROM) это самостоятельные отдельные процедуры.
И рекомендуется шить сначала программу, затем ПЗУ, затем фьюзы, в принципе что у нас и происходит, когда мы загружаем все файлы для прошивки, и выставляем фьюзы в окошке.

7) Итак, файлы прошивки мы загрузили, теперь нам нужно выставить фьюзы, для моего проекта фьюзы следующие: BOOTSZ1, BOOTSZ0, SUT1, CKSEL3, CKSEL2, выставляем их.

CodeVision AVR

8) Затем ставим галочку Program Fuse Bit(s), если вы не поставите галочку – фьюзы не будут записываться.

Чтобы проверить, видит ли наша программа программатор, подключенный к LPT порту, нажимаем кнопку Reset Chip, на программаторе должны мигнуть светодиоды чтения/записи. Если светодиоды не мигают, значит нам нужно проделать операции после пункта 6, описанные в предыдущей части статьи.

9) Теперь можно прошить МК, нажимаем кнопку Program All, и начнется процесс прошивки.

CodeVision AVR

CodeVision AVR

Если вы загружали только файл прошивки FLASH, .hex, то по ходу прошивки программа предложит загрузить файл EEPROM,  жмем NO, т.е. НЕТ.

CodeVision AVR

После чего пробегут еще 2 полоски и процесс прошивки завершится

CodeVision AVR

Во время прошивки МК нельзя выключать или  перезагружать ПК!

Теперь можете проверить МК, поставив его в панельку вашего устройства. Если вы хотите записать другую прошивку на этот же МК, новую прошивку можно записать поверх старой, или же стереть сначала старую, потом записать новую, как вам удобнее, разницы особой нету.

11) Чтобы стереть данные с МК нажимаем Program -> Erase Chip.

CodeVision AVR

CodeVision AVR

В данной программе можно считать данные FLASH или EEPROM с МК, или просмотреть Lock биты, установленные Fuse биты. Все это в меню Read (считать).

Решение некоторых проблем с AVR

C разными программаторами, и с разными программами возникают разные ошибки, но некоторые ошибки между собой очень похожи, и устраняются одинаково. Во первых микроконтроллеры подключайте строго к указанным выводам: RESET, VCC, GND, MOSI, MISO, SCK. Если  спутаете вывода, или забудете припаять один из контактов, МК не прошьется. Случайно МК в панельку можно поставить спутав вывода, т.е. задом на перед, от этого МК не сгорит, но и не прошьется конечно тоже.  Напомню еще раз, что у некоторых МК, например в ATmega 64 и 128 вывода MOSI и MISO не применяются для ISP программирования, вместо них вывода MOSI подключают к ножке PE0, a MISO к PE1. Напряжение питания не должно быть ниже чем нужно, иначе МК не будет программироваться, программы будут выдавать ошибки о том, что не могут обнаружить МК.

CodeVision AVR

CodeVision AVR

Записывать левые программы, например программу, предназначенную для ATmega8 в ATmega48 нельзя.  Бывает, что вы запрограммировали МК и файлы прошивки удалили с компьютера, а найти прошивку чтобы прошить другой МК не можете найти. В таких случаях просто считываете программу с микроконтроллера, например с помощью CVAVR и сохраняете его на ПК, затем этой прошивкой прошиваете другой МК.

Если вы случайно запрограммировали какой то фьюз, после чего МК залочился, вспомните, что это был за фьюз, некоторые МК с неправильно зашитыми фьюзами удается восстановить, есть несколько способов как это сделать. На К155ЛА3 можно собрать генератор чтобы восстановить МК с запрограммированным RSTDSBL, если вы выставили фьюзы на работу от внешнего генератора, подавая сигнал на вывод XTAL1 некоторые умудряются таким способом восстановить МК. Также фьюзами можно выставить тактирование от внешней RC цепочки. В таком случае придется собрать RC цепочку, чтобы опять запустить МК. Ещё есть фьюзы DWEN, SPIEN..., установив которые, вы отключите возможность пользоваться ISP программатором, тут поможет только параллельный программатор, другие программаторы (к примеру тритон) или приборы, которые встречаются на просторах интернета: например этот, или ATmega Fusebit Doctor, данный прибор я собирал, но почему то он не заработал должным образом, плата все еще валяется где то в ящике, как нибудь снова надо взяться за него. Честно говоря, у меня до сих пор валяются три залоченных микроконтроллера, две меги48 и одна мега8, однажды мегу 8ю, которая перестала определяться в программаторе PonyProg (работает через COM порт) я восстановил собрав программатор STK200. Притом знаете ли, свой первый купленный микроконтроллер я прошил с первого раза, и он до сих пор работает у меня в лабораторном блоке питания.

Автор: Романов А.С (г. Чебоксары)


Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться, либо войти на сайт под своим именем.

Обсудить на форуме


На момент добавления Микроконтроллеры AVR для начинающих - 3 все ссылки были рабочие.
Все публикации статей, книг и журналов, представлены на этом сайте, исключительно для ознакомления,
авторские права на эти публикации принадлежат авторам статей, книг и издательствам журналов!
Подробно тут | Жалоба

Добавление комментария

Ваше имя:*
E-Mail:*
Текст:
Вопрос:
Решите уравнения x+2x=789
Ответ:*
Введите два слова, показанных на изображении:



Опрос

Ваши предпочтения в TRX


Одинарное преобразование
Двойное преобразование
Прямое преобразование
SDR
Другое
Мне всё равно

Календарь новостей
«    Апрель 2024    »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930