AVRDUDE_PROG: программирование ATmega, ATtiny

Admin 17.09.2016

Доброго дня уважаемые друзья!
Приветствую Вас на сайте «Мир микроконтроллеров»


Программа AVRDUDE_PROG: программирование микроконтроллеров AVR ATmega и ATtiny

Популярнейшая программа AVRDUDE_PROG 3.3 предназначена для программирования микроконтроллеров AVR ATmega и ATtiny:
1. Возможность самостоятельного добавления программаторов, настройки скорости программирования и т.п;
2. Возможность самостоятельного добавления МК;
3. Редактирование и настройка отображения Fuses битов;
4. Выбор инверсных или прямых Fuses битов;
5. Окна вывода значений Fuses битов в HEX формате;
6. Сохранение настроек программирования при закрытии программы, т.е. при последующем открытии все настройки восстановятся.

programma-avrdude_prog-3-3


В прошлой статье я рассказал о простом (но очень хорошем) программаторе для прошивки микроконтроллеров AVR ATmega и ATtiny — USBASP AVR программатор. В той же статье я указал какие программы поддерживают данный программатор. Наиболее лучшей из них, на мой взгляд, является программа AVRDUDE_PROG автором которой является Сергей Боднар. О ней мы сегодня и поговорим.
Последняя версия программы AVRDUDE_PROG — 3.3, из программы всегда можно попасть на сайт разработчика и скачать новые версии.
Программа очень проста в использовании, имеет приятный интуитивно понятный интерфейс на русском языке, поддерживает очень много различных программаторов и практически все микроконтроллеры ATmega и ATtiny. Немаловажно и то, что в программу можно самому вносить изменения — добавлять программаторы, микроконтроллеры, изменять некоторые настройки (все подробно расписано на сайте разработчика).
Программа не требует установки на компьютер, необходимо только разархивировать скачанный файл и можно сразу приступать к работе, поддерживаются все разновидности Windows — от ХР до 10.

Окно запущенной программы AVRDUDE_PROG:

vneshniy-vid-okna-avrdude_prog-3-3

Что есть что:
1:
— окно выбора типа микроконтроллера
— кнопка «Стереть все» — очищает все внутренности микроконтроллера

okno-vyibora-mikrokontrollera
2:
— чтение калибровочных ячеек микроконтроллера

chtenie-kalibrovochnyih-yacheek
В данном примере показаны четыре калибровочные ячейки микроконтроллера ATmega8 для внутреннего RC генератора:
ВВ — для частоты 1 МГц (частота по умолчанию)
BD — для частоты 2 МГц
В2 — для частоты 4 МГц
В2 — для частоты 8 МГц
При тактировании микроконтроллера ATmega8 частотой 1 МГц от внутреннего RC генератора (по умолчанию) содержимое первой калибровочной ячейки автоматически учитывается микроконтроллером для подстройки внутреннего генератора. При других частотах — содержимое соответствующей калибровочной ячейки необходимо вручную вводить в регистр микроконтроллера для получения более стабильной частоты (если такое нужно). К примеру, в конструкции «Трехканальный термостат, термоморегулятор, таймер…», которая работает с тактовой частотой 8 МГц от встроенного генератора с внутренней RC цепочкой, требуется перед прошивкой ЕЕPROM памяти записать в определенную ячейку HEX файла значение калибровочной ячейки для частоты 8 МГц.
3:
— выбор HEX файла для прошивки Flash памяти микроконтроллера, сверка записанного файла с оригиналом, чтение данных из памяти
4:
— выбор HEX или EEP файла для прошивки EEPROM памяти микроконтроллера, сверка и чтение
5:
— выбор программатора (по умолчанию — USBASP)

vyibor-programmatoraЕсли вы будете пользоваться программой скачанной с сайта разработчика то там, по умолчанию (первым в списке), будет идти «USBASP», у меня на картинке 4 разновидности USBASP программатора:
— Usbasp_1M
— Usbasp_4M
— Usbasp_8M
— Usbasp-32кГц
Дело в том, что программатор USBASP позволяет записывать файлы прошивки с двумя скоростями:
— для МК с тактовой частотой 1,5 МГц и выше (без перемычки на J3) — скорость записи 375 кГц
— для МК с тактовой частотой менее 1,5 МГц (с перемычкой на J3) — скорость записи 5 кГц
Для нормальной записи прошивки в МК требуется скорость в 4 раза меньше, чем установленная тактовая частота.
Для прошивки нового МК, у которого по умолчанию тактовая частота 1 МГц, необходимо устанавливать в программаторе перемычку на разъем J3, а сама скорость — 5 кГц, в некоторых случаях начинает нервировать.
Для того, чтобы не портить нервы, не дергаться с перемычкой, я программно установил 4 варианта скорости записи, которые выбираются в зависимости от текущей тактовой частоты МК:
— Usbasp_1M — скорость 187,5 кгЦ, для частот 1-4 МГц
— Usbasp_4M — скорость 375 кГц, для частот 4-8 МГц
— Usbasp_8M — скорость 750 кГц, для частот 8 и более МГц
— Usbasp-32кГц — скорость 4 кГц, для часового кварца
Все эти установки прописаны в самом начале файла «programm.ini» где скорость записи зависит от ключа «-В» и числа после него:

fayl-rogramm

znacheniya-klyucha-v-dlya-skorosti-programmirovaniya

6:
— выбор отображения FUSE битов — прямой (как в UniProf и даташитах) и инверсный (как в PonyProg)
7:
— окно вывода служебной информации о выполняемых и выполненных операциях


Внешний вид окна «FUSES» программы AVRDUDE_PROG:

okno-ustanovki-fuse

Тут все просто — расставляем в нужном виде галочки или убираем их и программируем FUSE биты. Если что-то намудрили — нажатие кнопки «По умолчанию» приведет установки FUSE битов в значения «по умолчанию» (сами FUSE биты в МК не изменятся!). Очень внимательно устанавливайте FUSE биты — ошибка может привести к отказу микроконтроллера.


Внешний вид окна «Автоматическое программирование» AVRDUDE_PROG:

vneshniy-vid-okna-avtomaticheskoe-programmirovanie

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

Как видите — программа AVRDUDE_PROG проста и понятна в использовании, за что и скажем спасибо Сергею Боднару!


  Скачать программу AVRDUDE_PROG 3.3 (1,3 MiB, 10 198 hits)

Скачать с ЯндексДиска


Программирование микроконтроллеров AVR фирмы Atmel

1. Микроконтроллеры — первый шаг
2. Системы счисления: десятичная, двоичная и шестнадцатиричная
3. Логические операции, логические выражения, логические элементы
4. Битовые операции
5. Прямой, обратный и дополнительный коды двоичного числа
6. USBASP программатор для микроконтроллеров AVR — идеальное решение для начинающих, и не только


(15 голосов, оценка: 5,00 из 5)
Загрузка...
Программа AVRDUDE_PROG: программирование микроконтроллеров AVR ATmega, ATtiny
Published by: Мир микроконтроллеров
Date Published: 09/17/2016

Комментарии

AVRDUDE_PROG: программирование ATmega, ATtiny — 11 комментариев

  1. Здравствуйте уважаеммый Admin.
    У меня есть прошитый с внешним квар
    цем на 8мгц ATMEGA328P. Как мне
    перешить его для работы от внутрен
    него генератора 1мгц. в этой програм
    ме. Боюсь залочить чип. Спасибо за
    Ваш сайт. С уважением Николай.

    • Здравствуйте Никита (надеюсь правильно написал Ваше имя)!
      Я обязательно сегодня прочитаю даташит на этот МК (чтоб потом не обмануть). Немного позднее отвечу на Ваш вопрос. Выложу в картинке.
      С уважением, Admin.

      • Здравствуйте уважаемый Admin.
        О какой картинке идет речь? С уважением Николай.

        • Входите в программу, выбираете свой микроконтроллер, переходите в раздел «Fuses», жмете кнопку «По умолчанию», а затем «Программирование».

          • Спасибо! С уважением Николай.

  2. Добрый день.
    Купил программатор USBASP v2.0
    Подойдет ли данная программа для работы с ним, именно с версией 2.0?

  3. Я чего-то не понимаю мне например нужно будет сделать устройство спектроанализатор звука на атмега 8 и мне нужно будет иметь программу програмирования данной микросхемы или программа програмирования данной микросхемы для этого устройства уже есть в данной программе.

    • Здравствуйте Александр!
      Что бы запрограммировать микроконтроллер нужно:
      — программатор
      — программа AVRDUDE_PROG, или аналогичная.
      С уважением, Admin.

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *