Примеры CodeVisionAVR

Автор: Internet. Опубликовано в Начинающим CV AVR

Содержание материала

 
 
В настоящее время появилось много интересных и не сложных в изготовлении любительских устройств на микроконтроллерах ATtiny и ATmega , но перед большинством сразу возникает вопрос - как и чем тогда их запрограммировать?
На самом деле все очень просто, ниже приведен пример как это можно сделать с помощью PonyProg для "прошивки" ATtiny2313.
В компьютере для подключения программатора должно быть наличие LPT или СОМ порта, т.к. на работу с USB PonyProg изначально не был рассчитан. 
Скачать саму программу можно на сайте ее автора - Сlaudio Lanconelli , в разделе Download, последняя версия сейчас - v2.07, на сайте там так же есть схемы подключения для разных контроллеров и микросхем памяти.
Программатор или адаптер безопасней подключать к выключенному компьютеру, "горячее подключение" устройств не рекомендуется и грозит выходом из строя оборудования! После скачивания программы и установки на компьютере запускаем ее, в двух появляющихся окнах соглашаемся - жмем на ОК рис.1.Запускаем PonyProg 
 
1. Запускаем PonyProg
При первом запуске нужно будет сделать калибровку - нажимаем Setup > выбираем Calibration> нажимаем Yes > OK. рис.2.Делаем калибровку PonyProg
 2. Делаем калибровку PonyProgВсе - калибровка выполнена и при следующих запусках программы ее уже проводить больше не нужно.
Дальше нам нужно зайти в меню Setup > выбрать Interface Setup... (или кнопка на панели "гаечный ключ")
 
рис.3.Настройка Interface Setup... 
3. Настройка Interface Setup... в PonyProgтам проверяем установки для подключаемого нами программатора.
 рис.4.Выбор порта в PonyProg 
4. Выбор порта в PonyProg Для LPT-программатора выбрать Parallel или Serial - для программатора подключаемого к СОМ, после выбора нужного порта нажимаем для проверки определения подключенного устройства - Probe и должно появиться сообщение - Test OK!Пони Прог определяет наличие подключенного устройства только по соответствующим перемычкам на разъеме и на самом деле этот тест не говорит об исправности самого программатора - только о его наличии.

В случае появления сообщения Test Failed - может означать, что возможно не правильно выбран в списке тип программатора и нужно попробовать другие варианты в настройках I/O port setup или возможно придется проверить еще настройки самой ОС, настройки в BIOS - LPT порт должен иметь адрес 378h, включен в режиме работы ECP, EPP или ECP+EPP, режим работы SPP-Normal нам не подойдет, к тому же порт к которому подключен программатор не должен быть "занят" другими устройствами, такими как например принтер, модем или другим оборудованием.Выбираем из списка тип микросхемы, которую нужно запрограммировать, на скриншотах далее показан пример для ATtiny2313рис.5.Выбор типа микросхемы в PonyProg 
5. Выбор типа микросхемы в PonyProgС начала рекомендуется перед записью прочитать контроллер, это позволит лишний раз убедиться в том, что он определяется, что программа правильно настроена и все остальное работает как нужно.
Сообщение об ошибке Device missing or unknown device (-24) (Устройство неизвестно или повреждено) - говорит о том что Понипрог не может прочитать микросхему и нужно еще раз проверить правильность подключения, подается ли питание на программируемый контроллер и настройки самой программы
рис.6. Сообщение об ошибке Device missing or unknown device (-24) 
6. Сообщение об ошибке Device missing or unknown device (-24) в PonyProg

Если все нормально читается, то открываем файл прошивки, выбрав Open Device File... ( или иконка - "желтая папка")
 рис.7.Открытие файла прошивки в PonyProg
 7. Открытие файла прошивки в PonyProgстандартная процедура - в открывшемся окне выбираем папку где находиться нужный файл > кликаем мышкой на самом файле и потом нажимаем "Открыть". Если не нужно записывать всю микросхему, а только область FLASH или EEPROM, то выбираем соответствующее - Open Program File (FLASH) или Open Data File (EEPROM).
Программируем нажав на иконку Write Device All (запись) или иное, если нужно записать только FLASH или EEPROM, при этом появиться шкала отображающая процесс записи. по окончании записи должно появиться - Programming successful (программирование завершено). 
Все микроконтроллер записан.Если нужно изменить установку FUSE, то открываем - Security and Configuration Bits... (или кнопка "замок")рис.8.Открытие окна установки FUSE-бит в PonyProg 
8. Открытие окна установки FUSE-бит в PonyProg
В этом окне можно изменить (при необходимости) установку FUSE-бит , снимая или отмечая галочками на нужных нам. 
Здесь ВАЖНО помнить, что после некоторых изменениях Фьюзов, будет НЕ ВОЗМОЖНО повторное программирование этого микроконтроллера с PonyProg до тех пор, пока в (лучшем случае) не будут поданы внешние тактирующие импульсы на вывод XTAL или FUSE не будут сброшены в первоначальные установки с помощью более сложного параллельного программатора, поэтому прежде чем нажать на Write - проверяйте все внимательно!
рис.9.Окно установки FUSE-бит в PonyProg
9. Окно установки FUSE-бит в PonyProgОсновные кнопки здесь - Write (запись) и Read (чтение). Установленная галочка соответствует - будет записан 0. 
В PonyProg, как и в большинстве других подобных программ, галочка обозначает что будет записан 0, а не единица, как многие ошибочно думают. Так как вся память (микроконтроллеров, ПЗУ и просто микросхем памяти) не записанная (чистая) содержит во всех ячейках единицы - FF, то можно при программировании в них записать только ноль (запрограммировать) или оставить как F (=1) -не программировать ячейку.Основные используемые кнопки (иконки) панели в PonyProg
 10. Обозначение кнопок в PonyProgКнопки верхнего ряда:
1. New Window - открыть новое окно2. Open Device File... - открыть файл прошивки
3. Open Program Memory (FLASH) File - открыть файл прошивки FLASH
4. Open Data Memory (EEPROM) File - открыть файл прошивки EEPROM5. Save Device File – сохранить файл
6. Save Program Memory (FLASH) File - сохранить файл прошивки FLASH
7. Save Data Memory (EEPROM) File - сохранить файл прошивки EEPROMКнопки нижнего ряда: 
8. Read Device - прочитать все микросхему
9. Read Program Memory (FLASH) - прочитать FLASH
10. Read Data Memory (EEPROM) - прочитать EEPROM11. Write Device - записать все микросхему
12. Write Program Memory (FLASH) - записать FLASH
13. Write Data Memory (EEPROM) - записать EEPROM14. Erase all the Device to FF - стереть микросхему 
15. Security and Configuration Bits... - вызов меню FUSE и биты конфигурации Источник статьи