Страница 1 из 1

PonyProg2000

СообщениеДобавлено: 09 окт 2011, 15:39
ZuykovAV MEPhI
Перед тем, как привести инструкцию для PonyProg2000, отвечу на часто встречающиеся вопросы:

А для компьютеров, где нет LPT порта, можно применять переходные платы USB ->LPT?

Нет, пока не встречал таких переходников, с которыми работает программатор STK200/300 и программа PonyProg.

Можно какие-то рекомендации на эту тему?

1. С PonyProg работает также программатор SI-Prog
Он подключается к COM-порту. И при настройке PonyProg выбирается не LPT, а соответствующий COM-порт.
2. Есть множество переходников USB-COM, с которыми “работает” SI-Prog и PonyProg, но очень и очень медленно. Этот вариант использовать не рекомендуется.
3. С USB-портом рекомендуется использовать AVRISP-MKII от Atmel. Этот программатор можно найти в продаже, но он - дорогой.
Есть множество клонов этого программатора, например, на сайте www.fourwalledcubicle.com
У клонов есть разные варианты исполнения, например: microsin.ru, radiokot.ru, avrdevices.ru ...
4. С USB портом работает также простой программатор USBtinyISP .
5. Любой из школьников, выполнивший и защитивший 8-ое задание, может получить печатную плату любого программатора (под LPT, COM или USB) бесплатно. Для каждого из программаторов есть два варианта исполнения с выводными и с SMD-компонентами (выбор зависит от навыков монтажа-пайки).

PonyProg2000

Порядок действий:

1. Загрузка и установка PonyProg;
2. Первый запуск. Настройка PonyProg для работы с программатором STK200/300;
3. Подключение программатора к схеме с микроконтроллером и конфигурационные ячейки микроконтроллера (Fuse Bits);
4. Запись в микроконтроллер (файл *.hex).

1. Загрузка и установка

Перейдите по ссылке http://www.lancos.com/ppwin95.html и прокрутите страницу где-то до середины.
Там нужно нажать на наиболее позднюю версию, на момент написания инструкции была - v2.07c BETA:
Изображение

На следующей странице через несколько секунд должно появиться окошко (разное для разных браузеров) с предложением сохранить файл.
SourceForge - один из самых больших в мире веб-сайтов для разработчиков открытого программного обеспечения.
На момент написания инструкции сайт выглядел так:
Изображение

2. Первый запуск. Настройка PonyProg для работы с программатором STK200/300

Собранный и проверенный программатор STK200/300 подключите к LPT порту ПК. Программатор соединяется или сразу с LPT-портом или для удобства в работе через кабель-удлинитель. У ПК порт LPT - это 25-ти контактый разъём DB25 розетка (гнездо).

Внимание! Не путайте с разъёмом типа DB25 вилка - это 25-ти контактный разъём COM порта.

Открываем PonyProg2000.
В появившемся окне можно отключить звук поставив галочку Disable sound.
Жмём кнопку OK:
Изображение

После первого запуска программы и закрытия заставки появляется два предупреждения.
Первое сообщает, что вы должны выполнить калибровку через опции меню перед любыми операции чтения-записи.
Жмём кнопку OK:
Изображение

Второе сообщает, что вы должны выполнить настройку через опции меню перед любыми операции чтения-записи.
Жмём кнопку OK:
Изображение

Учитывая эти предупреждения начнём настройку.
Выбираем на панели инструментов в раскрывающихся списках - AVR micro, ATtiny13:
Изображение

Заходим в настройки Setup->Interface Setup (или жмём кнопку с изображением ключа на панели инструментов):
Изображение

Появилось окно:
Изображение

Исправляем его содержимое на (в случае LPT программатора):
(номер LPT порта зависит от вашего ПК, обычно LPT1)
Изображение

Жмём на кнопку Probe (программатор должен быть подключен к LPT порту компьютера).
Если всё настроено правильно, то появится окно с надписью Test OK,
жмём кнопку OK, и закрываем окно настроек кнопкой OK.
Изображение

Заходим в калибрацию Setup->Calibration:
Изображение

В появившемся окне сказано закрыть все программы кроме PonyProg2000.
Закрываем все программы кроме PonyProg2000 и жмём кнопку Yes:
Изображение

В появившемся окне с надписью Calibration OK жмём кнопку OK:
Изображение

Настройка PonyProg2000 закончена.

3. Подключение программатора к схеме с микроконтроллером и конфигурационные ячейки микроконтроллера (Fuse Bits)

Подключите программатор к схеме на макетке (или к плате AT13) через 10-ти проводной шлейф; один из разъёмов шлейфа (с любой из его сторон) присоединяется к разъёму на программаторе, а второй разъём шлейфа (с другой его стороны) подключается к схеме с микроконтроллером. Подайте питание 5В.

Если Вы выполняли все проверки до этого момента, то всё должно быть нормально. Светодиоды индикации на блоке питания и на программаторе должны светиться (если они там есть). Теперь самое, почти заключительное!

Чтобы окончательно убедиться, что всё работает как надо, вам необходимо выполнить хотя бы одно действие над микроконтроллером с использованием программы PonyProg2000 и программатора. Например, считать конфигурационные ячейки микроконтроллера (Fuse Bits).

Жмём кнопку с изображением замочка на панели инструментов (или Command->Security and Configuration Bits) для того, чтобы считать конфигурационные ячейки микроконтроллера:
Изображение

Должно появиться окно:
(если вы установили на макетку "свежий" микроконтроллер ATtiny13, то в окне будет заводская конфигурация)
Изображение

При первом нажатии на замочек состояние ячеек считается сразу же автоматически.
В дальнейшем нужно жать кнопку Read, можно и сейчас её нажать.
Если у вас что-то не работает, то на экране монитора появится окно с ошибкой.

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

У вас есть рабочий программатор со шлейфом, на макетке установлен микроконтроллер ATtiny13 и он правильно "отзывается".

Теперь необходимо разобраться с конфигурационными ячейками в окне.

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

1. Ячейки CKSEL0 и CKSEL1:

В ячейке CKSEL1 нет галочки, в ячейке CKSEL0 установлена галочка, при этом, любому из положений соответствует "1" или "0" по справочнику.

Запомните !!!
- если галочки нет - значит, ячейка = 1,
- если галочка есть, то, значение ячейки = 0.

Здесь состояние ячеек CKSEL1 и CKSEL0 соответствует частоте 9600000 Гц (см. справочник, в литературе обычно пишут CKSEL[1:0]).

2. Ячейка СKDIV8.

СKDIV8 - это ячейка-делитель на 8. Если в ячейке CKDIV8 установлена галочка, то частоту, определяемую по ячейкам CKSEL0 и CKSEL1 необходимо разделить на 8, и вы узнаете рабочую частоту микроконтроллера. В заводской конфигурации галочка в ячейке CKDIV8 есть, значит, включён делитель на 8. Следовательно, 9600000/8 = 1200000 Гц – это и есть - рабочая частота микроконтроллера.

Содержание конфигурационных ячеек SUT1 и SUT0 определяет время задержки сброса после подачи питания. Ячейки SUT1, SUT0 и остальные конфигурационные ячейки пока трогать не следует. Пока достаточно точно понимать назначение ячеек CKSEL0, CKSEL1 и CKDIV8.

Итак, рабочая частота микроконтроллера = 1200000Гц или 1.2 МГц.

Закройте окно конфигурационных ячеек кнопкой OK (или Cancel).

Сейчас можно закрыть PonyProg2000, но при следующем запуске не забудьте считать конфигурационные ячейки микроконтроллера!

4. Запись в микроконтроллер

Открываем (если он был закрыт) PonyProg2000.
Жмём кнопку с изображением замочка на панели инструментов (или Command->Security and Configuration Bits) для того чтобы считать конфигурационные ячейки микроконтроллера:
Изображение

Должно появиться окно:
Изображение

Нажмите кнопку Read и если считывание прошло успешно закройте окно конфигурационных ячеек кнопкой OK.
(Состояние конфигурационных ячеек должно соостветствовать частоте 1200000Гц)

Открываем файл с кодом для прошивки (расширение .hex) нажав кнопку на панели инструментов (или File->Open Device File):
Изображение

Изображение

Появилось его содержимое:
Изображение

Для записи программы в микроконтроллер жмём кнопку на панели инструментов (или Command->Write All):
Изображение

Жмём кнопку OK:
Изображение

В появившемся окне с надписью Write successful жмём кнопку OK:
Изображение

Готово!
Примеры программ расположены в разделе форума с заданиями.