Главная » Микроконтроллеры
Призовой фонд
на январь 2017 г.
1. 5000 руб.
Академия Благородных Металлов
2. 1000 руб.
Radio-Sale
3. Регулируемый паяльник 60 Вт
Паяльник
4. 600 руб.
От пользователей
5. Тестер компонентов LCR-T4
Паяльник

Похожие статьи:


Универсальный USB программатор

В интернете представлено множество схем программаторов микроконтроллеров. Представляю вариант внутрисхемного универсального USB программатора с возможностью отладки, которым пользуюсь я. Вы сможете собрать данный программатор своими руками.

Основой программатора является микросхема FT2232D. Представляет она собой преобразователь USB в два порта UART. Особенность заключается в том, что «верхний» канал А может работать в режимах JTAG, SPI и I2C, что и требуется для программирования микроконтроллеров, различных микросхем памяти и т.п.

Разработка данного USB-программатора ведется на компьютере с использованием библиотек от фирмы FTDI Chip.

Схема универсального программатора

Питается устройство от интерфейса USB. При правильной сборке схема не нуждается в настройке. Функционирование устройства зависит от мастерства разработчика ПО. Резисторы R8, R9, R12, R13, R14, R15, R16 являются токоограничивающими при неправильном соединении с устройством, соответственно, выводы программируемого устройства не должны соединяться с другими элементами в схеме, или иметь такие подтяжки, которые при образовании делителей напряжения не искажали бы логические уровни. Микросхема U1 используется для сохранения пользовательских настроек.

Выводы U2 (канал А):
24 — ADBUS0 – выход- в режиме JTAG TCK, в режиме SPI SK;
23 — ADBUS1 – выход- в режиме JTAG TDI, в режиме SPI DO;
22 — ADBUS2 – вход- в режиме JTAG TDO, в режиме SPI DI;
21 — ADBUS3 – выход- в режиме JTAG TMS, в режиме SPI как вспомогательный сигнал(CS);
20 — ADBUS4 – в режиме JTAG вход\выход, в режиме SPI вспомогательный выход. Этот вывод используется для подачи сигнала RESET в микроконтроллер;
15 — AСBUS0 – свободно программируемый вход\выход во всех режимах (опционно используется для подачи питания в программируемое устройство);
13 — AСBUS1 – свободно программируемый вход\выход во всех режимах.

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

Канал В используется для отладки программируемого устройства. Для этого нужно только иметь незадействованный порт UART в микроконтроллере. Далее дело техники. В программе микроконтроллера в нужных местах используем функцию форматированного вывода printf().

40 —BDBUS0 – выход- в режиме UART TXD;
39 —BDBUS1 – вход- в режиме UART RXD;
28 — BСBUS2 – выход- в режиме UART LED-индикатор (зажигается при передаче данных через USB);
27 — BСBUS3 – выход- в режиме UART LED-индикатор (зажигается при приеме данных через USB).

Ниже приведена печатная плата программатора

Печатная плата программатора. Верх.   Печатная плата программатора. Низ.

На сегодняшний день данный универсальный программатор поддерживает микроконтроллеры AVR по интерфейсам JTAG и SPI. Причем скорость прошивки Atmega64 по JTAG не более 5-и секунд, по SPI не более 8-ми секунд. Принципиально, прошивать можно любые микроконтроллеры, к которым распространяется спецификация для программатора. В настоящий момент, например, ведется разработка для поддержки микроконтроллеров NEC.

Рабочая форма для программирования

Рабочая форма поделена на две части: слева таблицы для работы с FLASH (сверху) и EEPROM (снизу), сюда можно открывать файлы или загружать прошивки из микроконтроллера, делать верификацию, править содержимое ячеек памяти; справа текстовое поле для отладки, сюда выводятся данные с канала В, также можно там вводить текст, который отправится в порт (функционально это аналог HyperTerminal). Разработка ведется на платформе Visual C# под Windows. Также есть возможность разрабатывать на других языках. Программатор может работать и под Linux.

Фото универсального программатора

Используемая литература:
1. А.В. Евстигнеев «Микроконтроллеры AVR семейств Tiny и Mega фирмы ATMEL», М. Издательский дом «Додэка-ХХI», 2005.
2. Future Technology Devices International Ltd. “FT2232D Dual USB UART/FIFO I.C.” , Datasheet, 2006.
3. Future Technology Devices International Ltd. “Software Application Development D2XX Programmer's Guide” , Document, 2009.
4. Future Technology Devices International Ltd. “Programmers Guide for High Speed FTCJTAG DLL” , Application note AN_110, 2009.
5. Future Technology Devices International Ltd. “Programmers Guide for High Speed FTCSPI DLL” , Application note AN_111, 2009.
6. Эндрю Троелсен «С# и платформа .NET» М.,С-П. Питер, 2007.

Скачать исходники ПО и печатную плату в формате P-CAD вы можете ниже

Борисов Алексей (Albor) г.Сызрань, Самарская обл.

Список радиоэлементов

Обозначение Тип Номинал Количество ПримечаниеМагазинМой блокнот
U1 МикросхемаAT93C46D-8S1 Поиск в FivelВ блокнот
U2 МикросхемаFT2232D1 Поиск в FivelВ блокнот
VT1 MOSFET-транзистор
BSS84
1 Поиск в FivelВ блокнот
С1 Конденсатор0.01 мкФ1 Поиск в FivelВ блокнот
С2, С3 Конденсатор27 пФ2 Поиск в FivelВ блокнот
С4, С5, С7, С9, С10 Конденсатор0.1 мкФ5 Поиск в FivelВ блокнот
С6 Конденсатор0.033 мкФ1 Поиск в FivelВ блокнот
С8 Электролитический конденсатор10 мкФ1 Поиск в FivelВ блокнот
R1 Резистор
2.2 кОм
1 0.05ВтПоиск в FivelВ блокнот
R2 Резистор
10 кОм
1 0.05ВтПоиск в FivelВ блокнот
R3, R4 Резистор
27 Ом
2 0.05ВтПоиск в FivelВ блокнот
R5 Резистор
470 Ом
1 0.05ВтПоиск в FivelВ блокнот
R6, R7 Резистор
1.5 кОм
2 0.05ВтПоиск в FivelВ блокнот
R8-R16 Резистор
220 Ом
9 0.05ВтПоиск в FivelВ блокнот
ZQ1 Кварц6 МГц1 Поиск в FivelВ блокнот
FB Катушка индуктивности1 Поиск в FivelВ блокнот
HL1, HL2 Светодиод2 Поиск в FivelВ блокнот
Добавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Теги:

Борисов Алексей Опубликована: 2011 г. 0 0
Я собрал 0 0
x

Оценить статью

  • Техническая грамотность
  • Актуальность материала
  • Изложение материала
  • Полезность устройства
  • Повторяемость устройства
  • Орфография
0

Средний балл статьи: 0 Проголосовало: 0 чел.

Комментарии (15) | Я собрал (0) | Подписаться

0
Baldr #
А ссылочку на программу можно узреть? Желательно с исходниками.
Ответить
0
VIN #
FT232 и MAX232 взаимозаменяемы?
Ответить
0
Владимир #
MAX232 - преобразователь RS232 в UART, а FTDI - USB в UART (VCP)
Ответить
0
Denis #
Скажите, а PIC можно программировать через этот программатор?
Ответить
0
Виктор #
Какие AVRы можно программировать?
Ответить
0
SergejGost #
Я только начинаю заниматься прошивкой контроллеров...
И вот тут мне что-то не понятно вовсе...в режиме SPI контроллер шьется по MISO,MOSI,SCK,RESET
Ну RESET понятно. А вот где остальные сигналы?
Ответить
0
EugenOS #
Добрый день. А может этот прогер работать в режиме Wiggler совместимого JTAG? А то есть ряд программ которые работают с Wiggler, но все схемы, что попадались, на LPT
Ответить
0
Дмитрий #
Какие микросхемы можно программировать кроме микроконтроллеров?
Ответить
0
Роман537 #
Микросхемы это совсем другое
Ответить
0
Евгений #
ATmega 324 можно запрограммировать этим программатором?
Ответить
0
Илья #
А какая катушка индуктивности нужна?
Для чего нужна микросхема AT93C46D-8S?
Ответить
0
Антон #
А есть возможность работы с флешами типа h90p32 (телефонная флешь-память)?
Ответить
0
илья27 #
Сможет ли прошить adsp-2186?
Ответить
0
ilya karataev #
Подскажите как возможно подключить к mips. Какое ПО необходимо?
Ответить
0
Алексей #
У меня ft2232H, оба порта настроены как d2xx подключал и к порту а и к порту б, мегу128 прога пишет устройство не найдено. В чем может быть проблема?
Ответить
Добавить комментарий
Имя:
E-mail:
не публикуется
Текст:
Защита от спама:
В чем измеряется электрическая мощность?
Файлы:
 
Для выбора нескольких файлов использйте CTRL

AVR-программатор USB ASP
AVR-программатор USB ASP
DC-DC регулируемый преобразователь 1.5-37В 2А с индикатором Pickit 2 - USB-программатор PIC-микроконтроллеров
вверх