При разработке и отладке программ под микроконтроллеры, возникают вопросы, связанные с программированием и отладкой программы в реальной схеме. Если с программированием микроконтроллеров AVR особых проблем не возникает, поскольку существует множество схем для «заливки» прошивки в кристалл, одной из простейших таких схем является схема получившая название «пять проводов», то с отладкой программы такого богатого выбора не существует.
Для отладки программы возможно использования только двух вариантов – это программный симулятор и внутрисхемный JTAG эмулятор-программатор. Программный симулятор, как правило, не может учитывать всех особенностей работы схемы, таких как внешние воздействия, совместная работа с другими устройствами и прочее. С аппаратными программаторами-отладчиками JTAG появляется возможность пошаговой отладки программы напрямую в самом микроконтроллере установленном непосредственно в схему, просмотра и изменения всех регистров микроконтроллера, установка breakpoints и конечно же внутрисхемного программирования микроконтроллера. Но стоимость оригинального AVR JTAG ICE MkII выпускаемого Atmel колеблется в районе 300 евро, а его аналога AVRDRAGON выпускаемого серийно около 3000руб., что является очень дорогим для людей, занимающихся созданием устройств на микроконтроллерах AVR «для себя».
Но к счастью удалось создать клон, оригинального AVR JTAG ICE, который стоит существенно дешевле оригинала и позволяет проводить программирование и отладку микроконтроллеров AVR с интерфейсом JTAG.
Рис 1. Принципиальная электрическая схема клона AVR JTAG ICE
Принципиальная электрическая схема приведена на рис. 1. Основой данного JTAG служит микроконтроллер DD3 AVR ATMega16. Микросхема DD2 MAX232 выполняет роль преобразователя интерфейса RS232 в ТТЛ уровни UART. Микросхема DD1 предназначена для защиты входных и выходных цепей микроконтроллера DD3 и согласования напряжения логических уровней при использовании внешнего питания.
Питание JTAG может браться от цепей питания отлаживаемого устройства через четвертый контакт vTref XP3, а также может использоваться внешнее через разъем XP1 и ХР2. Внешнее напряжение может быть в диапазоне от 7 до 15В. При использовании внешнего источника питания, вывод vTref разъема XP3можно не подключать.
Светодиод HL2 отображает наличие питания, HL1 режим работы JTAG.
Подключение JTAG к отлаживаемому микроконтроллеру осуществляется через стандартный десяти выводной разъем. Схема подключения которого изображена на рис. 2.
Рис 2. Схема подключения AVR JTAG ICE к отлаживаемому устройству
Существует несколько вариантов BootLoader загрузчиков для прошивки JTAG, но на мой взгляд наиболее удачный вариант получился у Кротевич Виталия (Vit). Его загрузчик наиболее близко повторяет фирменный и позволяет обновлять микропрограмму JTAG непосредственно из AVRStudio без перезагрузки JTAG и входа в режим программирования через BootStart. В случае если не планируется производить обновление прошивки JTAG`a , то загрузчик можно не прошивать, а «зашить» только оригинальную прошивку от AVRStudio.
Чтобы «зашить» bootloader в JTAG можно воспользоваться программатором AVReal, PonyProg, STK200, «пять проводов», любо любым другим имеющимся в наличии и совместимым с AVR ISP. Подключение программатора производится к ISP разъему программирования ХР4. Файл прошивки JTAG_ICE.hex.
Пример программирования фьюзов показан на рисунке 3.
Рис 3. Установка фьюзов для AVR JTAG ICE
Пример работы AVR JTAG ICE показан на рисунке 4. В качестве примера произведено считывание сигнатуры ATMega128
Рис 4. Чтение сигнатуры микроконтроллера ATMega128 с помощью AVR JTAG ICE
Рис 5. Изображение верхнего слоя трассировки печатной платы, с нанесенными элементами
Рис 6. Изображение нижнего слоя трассировки печатной платы, с нанесенными элементами
Фотографии готового устройства:
P.S. Схема и трассировка печатной платы разработаны автором статьи, загрузчик использован Кротевич Виталия (ака Vit), прошивка от оригинальной AVRStudio.
При написании статьи использовались следующие источники:
1 http://onembedding.bialix.com/files/jtag_vit/
2. Официальное руководство пользователя AVR JTAG ICE JTAGuserguide.pdf
Скачать прошивку, файлы печатных плат вы можете ниже
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
DD1 | ИС буфера, драйвера | CD74AC244 | 1 | Поиск в магазине Отрон | ||
DD2 | ИС RS-232 интерфейса | MAX232 | 1 | ST232BD | Поиск в магазине Отрон | |
DD3 | МК AVR 8-бит | ATmega16 | 1 | ATmega16-16PI | Поиск в магазине Отрон | |
DA1 | Линейный регулятор | LM78L05 | 1 | Поиск в магазине Отрон | ||
VD1, VD2 | Выпрямительный диод | SM4007PL | 2 | Поиск в магазине Отрон | ||
VD3 | Стабилитрон | BZX55C5V1 | 1 | SMBJ5.0A | Поиск в магазине Отрон | |
VD4, VD5 | Диод Шоттки | SM5819PL | 2 | Поиск в магазине Отрон | ||
HL1, HL2 | Светодиод | КР-3216-2 | 2 | Поиск в магазине Отрон | ||
C1, C2, C4-C6, C9-C13, C16 | Конденсатор | 0.1 мкФ | 10 | Поиск в магазине Отрон | ||
C3 | Электролитический конденсатор | 1 | Поиск в магазине Отрон | |||
C7 | Электролитический конденсатор | 470 мкФ 10 В | 1 | Танталовый | Поиск в магазине Отрон | |
C8 | Конденсатор | 1200 пФ | 1 | Поиск в магазине Отрон | ||
C14, C15 | Конденсатор | 22 пФ | 2 | Поиск в магазине Отрон | ||
R1 | Резистор | 36 кОм | 1 | Поиск в магазине Отрон | ||
R2 | Резистор | 150 кОм | 1 | Поиск в магазине Отрон | ||
R3-R6 | Резистор | 10 кОм | 4 | Поиск в магазине Отрон | ||
R4, R10 | Резистор | 4.7 кОм | 2 | Поиск в магазине Отрон | ||
R9, R11-R15 | Резистор | 200 Ом | 7 | Поиск в магазине Отрон | ||
R16 | Резистор | 510 Ом | 1 | Поиск в магазине Отрон | ||
BQ1 | Кварц | 7.3728 МГц | 1 | Поиск в магазине Отрон | ||
XS1 | Разъём | DRB-9F | 1 | RS-232 | Поиск в магазине Отрон | |
XP1 | Разъём | DJK-02 | 1 | Питание | Поиск в магазине Отрон | |
XP2 | Разъём | WF-2 | 1 | Питание | Поиск в магазине Отрон | |
XP3 | Разъём | IDC-10M | 1 | JTAG | Поиск в магазине Отрон | |
XP4 | Разъём | PLD-6 | 1 | ISP | Поиск в магазине Отрон | |
Разъём | PLS-3 | 2 | Перемычки | Поиск в магазине Отрон | ||
Скачать список элементов (PDF)
Прикрепленные файлы:
- AVR JTAG ICE.rar (723 Кб)
Комментарии (10) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация