25.03.2017 13:51 Количество просмотров материала 3559 Время на чтение ~3 мин
Увеличить | Уменьшить Распечатать страницу

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

Продолжим. После того, как мы ознакомились с процессом отладки написанной нами программы в "atmel studio" и виртуально собрали схему с одним светодиодом в "proteus", пришло время собрать схему в "железе" и прошить микроконтроллер.

Программирование AVR урок 3 — прошиваем микроконтроллер

Для программирования опытного экземпляра (atmega 8) будем использовать программатор USBASP. Он выглядит следующим образом:

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

К разъему будет подключатся шлейф, в который подключаются джамперы, что в свою очередь будут подключены к гнездам макетной платы, на которой установлен микроконтроллер:

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

Первый вывод отмечен на разъеме стрелочкой.

Программирование AVR урок 3 — прошиваем микроконтроллер
После того, как разобрались с программатором. Переходим к сбору схемы в "железе". Монтируем микроконтроллер на макетную плату. Напоминаю - первая ножка отмечена на МК маленьким кружком.

Программирование AVR урок 3 — прошиваем микроконтроллер Задача состоит в том, чтобы соединить выводы программатора с выводами "камня".

Подключаем джамперы в 10 контактный разъем. Задействуем следующие выводы MOSI, RST, SCK, MISO, VTG (VCC), GND.

Программирование AVR урок 3 — прошиваем микроконтроллер

Надеюсь вы уже скачали datasheet на atmega8. Если нет, его можно скачать здесь. Смотрим на распиновку выводов микроконтроллера.

Программирование AVR урок 3 — прошиваем микроконтроллер

Соединяем джамперы со следующими выводами:

  • VCC к 7 выводу МК;
  • SCK к 19 выводу МК;
  • MISO к 18 выводу МК;
  • MOSI к 17 выводу МК;
  • GND (10 вывод программатора) к 8 выводу МК;
  • RST к 1 выводу МК;

Для дальнейшем успешной работы, операционная система при первом запуске шайтан-машины (программатора) предложить установить необходимые для работы устройства драйвера.

При работе с экспишкой проблем возникнуть не должно. Скачиваем драйвер. Создаём папку, в которую распаковываем скаченный архив. После чего в мастере установки оборудования указываем путь на папку с разархивированным драйвером.

Если вы работаете в windows 7 или выше, могут возникнуть небольшие трудности. Драйвера для программатора достаточно старые, поэтому у них нет цифровой подписи. При попытке установить такой драйвер операционка выдаст, что-то на подобии этого *

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

Чтобы исправить ситуацию нужно отключить проверку цифровой подписи драйвера. Описывать способы отключения не буду (у каждого своя операционная система), их можно найти в интернете.

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

Программирование AVR урок 3 — прошиваем микроконтроллер

Надеюсь у вас всё получилось и программатор готов к работе.

Переходим к сбору схемы со светодиодом.

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

Для прошивки микроконтроллера будем использовать программу "avrdudeprog". Она лежит в общем архиве.

Программирование AVR урок 3 — прошиваем микроконтроллер

Выбираем atmega8 из списка микроконтроллеров. После того, как выбрали МК появиться окошко, которое известит о том, что фьюзы и Lock биты установлены по умолчанию.

Следующим шагом будет нужно считать калибровочные ячейки. Если вы подключили всё правильно, то увидите следующее сообщение.

Программирование AVR урок 3 — прошиваем микроконтроллер

Затем открываем вкладку фьюзы (Fuses). Простыми словами Fuses — это конфигурационные настройки МК, с которыми лучше не играть. Для случая, когда вы приобрели такой же контроллер, как я и у вас нет внешнего кварцевого резонатора (вы используете внутренний генератор тактовой частоты), выставляете точно такие галочки, как представлены на картинке. Обязательно возле пункта «инверсные» должна стоять галочка.

Программирование AVR урок 3 — прошиваем микроконтроллер

Выставленные настройки "командуют" Atmega8A выполнять свою работу при условии тактирования от внутреннего генератора (частота тактирования 8 МГц). Для того, чтобы настройки вступили в силу нужно нажать кнопку "Программирование". Но перед нажатием еще два раза проверьте все ли выставили должным образом.

Возвращаемся на страницу "Program".

После того, как мы уже сообщили программе, какой именно микроконтроллер будем шить, выбираем файл прошивку, которую написали в прошлом уроке. Она имеет расширение HEX. Находится в папке «Debug»

Перед тем, как прошивать "камушек" нажимаем на кнопку "Стереть все".  Это обезопасит вас от непонятных ошибок (вдруг камень уже шили):

Программирование AVR урок 3 — прошиваем микроконтроллер

Нажимаем "Программирование".  Если все прошло успешно программа выдаст

Программирование AVR урок 3 — прошиваем микроконтроллер

Программирование AVR урок 3 — прошиваем микроконтроллер

Архив с драйверами

Datasheet на atmega8

Картотека программирования

Наслаждаемся результатом своей работы :-) Продолжение следует...

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]


Вверх