Четверг, 28.03.2024, 13:51 Приветствую Вас Гость

Автозапуск за 1500р. на ЛЮБОЙ сигнализации?! -> at13.ru

Главная | Регистрация | Вход | RSS

Каталог статей


[Микроконтроллеры] Часть вторая. Собираем программатор. Работа с PonyProg.


У пони прога есть единственный плюс (а может быть и минус), он не дает запрограммировать некоторые фьюзы, которые иногда еще называют опасными (например RSTDSBL, DWEN, SPIEN). Если случайно запрограммировать такой опасный фуз, то вы отключите возможность пользоваться ISP программатором, МК заблокируется, для восстановления МК нужен будет параллельный программатор (высоковольтный).

Пользоваться программаторами типа "5 проводков” не рекомендую, есть облегченный вариант программатора STK-200, который так-же построен на нескольких проводках, собирать его я так же не рекомендую, по той причине что таким программатором очень легко спалить LPT порт, для сравнения COM порт спалить в разы труднее. Да и потом, программируя "5ти проводками” можно случайно замкнуть эти провода между собой, спалить МК или опять же порт. Использование буферного повторителя в микросхеме улучшает крутизну фронтов сигнала, а так же бережет LPT порт, от случайных КЗ и перенапряжений.

 

Ниже представлена схема программатора STK200:

 


Как видите, схема очень простая, построена всего лишь на 1 микросхеме, отечественный аналог этой микросхемы КР1533АП5. В схеме присутствуют 3 светодиода: питание, чтение, запись. Длина соединяющих проводов должна быть как можно короче.

 

Собранный программатор выглядит вот так:

 

 

 

 


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

 


Ниже в архиве прикреплены все файлы для изготовления программатора, схема, печатная плата программатора и переходника для ATmega8/48/168, ATtiny2313, фотографии.

 

 

 


Для того чтобы проверить работает ли наш проргаматор, втыкаем его в порт LPT, кликаем правой кнопкой мыши на значке "Мой компьютер”, в появившемся списке выбираем "диспетчере устройств”, откроется окошко, кликаем обновить конфигурацию оборудования и на программаторе моргнут светодиоды чтения/записи. Кстати, питание берется от внешнего источника, а не с LPT порта, будьте внимательны.

Главным преимуществом параллельного программатора является способность восстанавливать некоторые неправильно установленные биты. После этого интерфейс ISP отключается, и при программировании последовательным программатором в таких случаях выдается сообщение об ошибке.

 

 

 

 

Выбор программы и программирование.


Популярными программами для записи программы в МК являются PonyProg и CodeVision AVR. Я пользуюсь Code Vision AVR (далее CVAVR), но рассмотрим мы обе программы. Впринципе, можете пользоваться любыми другими программами, только запомните одно очень важное замечание, в разных программах фьюзы могут выставляться по разному, т.е. зеркально.

В первую очередь втыкаем программатор в нужный нам порт, только сначала ставим микроконтроллер в панельку. Питание подавайте после того как воткнете программатор в порт. Для того чтобы запрограммировать МК нам нужны файлы прошивки, файл с расширением .hex, в некоторых проектах используется еще файл EEPROM .eep. (электрически изменяемая память данных, в нем хранятся различного рода константы).

 

 

 

 


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

 

 

 

 

Рассмотрим прошивку МК с помощью программы PonyProg.


1) Запускаем программу, выскочит окошко (возможно проиграется звук), нажимаем ОК.

 

 

 

 


2) Далее в списке микроконтроллеровнужно выбрать наш МК, кликаем меню "Устройство”, затем выбираем AVRmicro -> ATmega8.

 

 

 


3) Теперь нам нужно выбрать файлы прошивки, для этого кликаем Файл -> Открыть файл программы (FLASH)… . Откроется окошко, где нам нужно выбрать наш файл прошивки с расширением .hex.

 

 


4) В окошке не забываем в списке выбрать нужное нам расширение файла, иначе файл прошивки не обнаружится.

 


После того как откроем файл окошко будет заполнено непонятными цифрами и буквами:


5) Теперь точно также нужно выбрать файл другой файл прошивки EPROOM с расширением .eep, если конечно он прилагается. Как я уже говорил, чаще нужно пошивать только .hex.

 


Если вы еще не воткнули программатор и не подали на него питание, сделайте это. Не забудьте вставить МК в панельку, не перепутайте положение в панельке, обратите внимание на насечку или кружок на корпусе МК, оттуда и начинается отсчет ножек.

6) Кликаем Установки -> Настройка оборудования. Все настройки выставляем как на рисунке ниже, затем нажимаем кнопку "Проверка” – должно выйти окошко "Тест ОК”

 


Если этого не произошло и вышла окошко с надписью "Тест ОШИБКА”

 


кликаем правой кнопкой мыши на значке Мой компьютер и выбираем Диспетчер устройств или можно зайти в Панель управления -> Система -> Оборудование -> Диспетчер устройств.

 

 

 


Выйдет такое окошко, в списке находим Порты (COM и LPT ), кликаем правой кнопкой мыши на нем и нажимаем "Обновить конфигурацию оборудования”.

 

 

 


Затем закрываем окно, и возвращаемся к PonyProg, повторяем пункт 6, нажимаем "Проверка”, должно выйти окошко с надписью "Тест ОК”.

 

 

 


7) Нажимаем "ОК”, далее тыкаем меню Установки -> Калибровка, нажимаем Yes.


Выйдет сообщение об успешно проведенной калибровке, нажимаем ОК .


8) Сейчас нам нужно будет выставить фьюзы, если в вашей конструкции фьюзы не выставляются, переходите к следующему пункту. Кликаем Команды -> Security and Configuration Bits… откроется окошко для установки фьюзов.

 

 

 


Ставим строго те галочки, которые нам нужно, для моего проекта нужно выставлять следующие фьюзы: BOOTSZ1, BOOTSZ0, BODEN, CKSEL3, CKSEL2. Затем нажимаем ОК. Фьюзы при программировании нужно выставлять только те что указано, если запрограммируете ненужные вам фьюзы, МК может залочиться, разблокировать его потом будет очень сложно, нужен будет более сложный программатор чем наш, будьте внимательны! Записывать программу в МК можно без выставления фьюзов – заработает затем устройство или нет, это другой вопрос, если даже и заработает, может очень сильно тормозить, или будет работать частично, это ничем не грозит, МК лочится только после неправильно выставленных фьюзов. В некоторых проектах могут использоваться фьюзы, которых может не оказаться в PonyProg, например SPIEN, этот фьюз отключает возможность внутрисхемного программирования, поэтому во многих программах не показывается специально, чтобы вы случайно его не установили.

 

 

 


9) Теперь все готово, и можно прошить микроконтроллер, нажимаем Команды -> Записать все. Если вы еще не передумали, то в окошке которое вышло, нажимаем "Yes”, и начнется процесс записи и проверки.

 

 

 


После чего выйдет сообщение об успешном завершении операции.


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

10) Если спустя какое то время вам захочется сменить прошивку, или использовать МК для другого проекта, то снова вставляем его в программатор, подключаем тот к ПК, открываем программу, кликаем Команды -> Стереть, программа сотрет все данные с МК.


Стирать данные совсем не объязательно, при записи новой программы, старая программа сотрется автоматически, и только потом запишется новая.

Что касается программы PonyProg, в разных версиях свой список устройств, если в вашей версии программы вы не можете найти в списке МК скажем ATmega32, скачайте другую версию.

Скачать печатные платы для программатора.

 

 

 

 

 

Категория: Информация по МК, FAQ | Добавил: Адвансед (16.03.2012)
Просмотров: 11401 | Комментарии: 9 | Теги: Микроконтроллеры | Рейтинг: 4.5/4
Всего комментариев: 9
8 VO22VA  
Спаял схему программатора, правда на временной печатной плате (печатку не делал), перепроверил несколько раз. При включении в ЛПТ порт загорается зеленый светодиод, включаю питание 5 вольт внешние диод загорается сильнее, очень слабо горят желтый и красный. После обновления в диспетчере задач моргает красный. Что не так? Подключаю к ноутбуку на виндовс ХР, ноутбук IBM

7 Artur21  
Схема на самом первом рисунке, чертеж платы чуть ниже. Кварц в схеме не нарисован, но на плате его нужно ставить - но не обьязательно

6 VO22VA  
Спасибо за ответ, а принципиальная схема переходника есть?

4 VO22VA  
Перезалейте пожалуйста переходник для программирования AVR, не могу понять какой кварц стоит, нужна схема переходника.

5 Адвансед6476  
0
это не файл, это была ссылка на другую статью которой нет. А кварц стоит на 12 или 14 мГц, можно 16 поставить (можно, впринципе его даже не ставить) Он нужен только в случае неправильного программирования фьюзов, иногда при наличии этого кварца микроконтроллер можно восстановить

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

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

9 us7ipw  
Sergey28  наверное имел ввиду что допустим на печатке 4-й вывод ISP идет на кварц и кондер,а по схеме это минус. Наверное так...

1 Simple  
Хорошая статья! Как то пыталсся собрать мигалку на МК, но не смог прошить его.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Категории раздела
Источники питания и приборы
Охрана и контроль доступа
Измерительные устройства
Часы, таймеры, счетчики
Световые эффекты
Защита и контроль
Для начинающих
Разное
BASCOM AVR
Информация по МК, FAQ
Поиск
Вход на сайт
Наш опрос
На каком МК AVR вы больше собрали схем?
Всего ответов: 298
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Друзья сайта