Программатор на FT232RL без управляющего МК.

Рассказать в:

                                          Программатор на FT232RL без управляющего МК.     В наши дни становиться всё меньше и меньше ПК с наличием в них COM и LPT портов.  В этом случае можно использовать USB программаторы, но большинство из них имеют в своём составе микроконтроллер, который тоже нужно чем-то прошить. Вот тут и начинается проблема “курицы и яйца” т.е чтобы собрать программатор нужен ещё один программатор. Но к счастью в интернете уже давно появилась схема высокоскоростного USB программатора, не требующего прошивки управляющего контроллера. Программатор называется USBBit. В составе этого программатора имеется распространённая микросхема FT232RL. Это аппаратный высокоскоростной переходник USB – RS232, который может не только эмулировать RS232, но и поддерживает прямой доступ к порту (это когда мы можем не только записать в порт число, но и выставить любой вывод порта в 0 или 1). Такой режим называется BitBang. Именно с помощью этого режима можно эмулировать интерфейс SPI, по которому программируются микроконтроллеры AVR. Недостатка у этой микросхемы два: она очень маленькая и запаять её бывает сложно, и она дорогая (у нас она стоит 210 рублей). Но это стоит того! Программатор получается отличный, а главное не требует прошивки управляющего контроллера! Схема (упрощённая): Программатор на FT232RL без управляющего МК.     Это упрощённая схема, но тем не менее рабочая. Также программатор можно использовать в качестве переходника USB – UART. Джампером выбирается уровень сигналов программирования – 5 или 3.3в. Но у этой схемы есть два недостатка: он не возвращает в 1 линию RST после программирования, и чтобы программа запустилась, нужно отключать программатор то целевой платы, что неудобно. И ещё один её недостаток – после завершения программирования линии остаются либо в нулях, либо в единицах, а если к выводам программирования мк подключено ещё что-то, то это доставляет неудобство.                       Я рекомендую эту схему: Программатор на FT232RL без управляющего МК.    Я собрал именно эту схему. За счёт применения микросхемы буфера удалось избавиться от вышеперечисленных недостатков. У микросхемы буфера есть три состояния выхода: высокий уровень, низкий уровень и hi-z. Hi-z – третье состояние, при котором линии как бы не к чему не подключены, поэтому на них ни 1, ни 0. Вывод 1 и 19 – выводы управления. Если на них подать 1, то выход перейдёт в hi-z состояние, а если ноль – на выводе будет либо 1, либо 0, в зависимости от сигнала на входе. И ещё один плюс такой схемы – если вывод программирования случайно закоротить(соединить) на землю, то сгорит буфер, который стоит 7 рублей, а не микросхема за 210!
Далее я , как обычно развёл плату в Sprint-layout:
Программатор на FT232RL без управляющего МК.
Вытравил и запаял:
Программатор на FT232RL без управляющего МК.
Вид со стороны пайки:
Программатор на FT232RL без управляющего МК.
       Софт
   Всё, программатор собран. Переходим к тестированию. Для начала подключите его к пк, он должен найти новое оборудование – FT232R USB UART. Далее скачайте архив с драйвером в конце страницы, и установите драйвер. Если всё прошло успешно, в диспетчере устройств появятся два новых устройства – USB Serial Converter (в разделе “контроллеры последовательной шины USB”) и USB Serial Port (в разделе “порты COM и LPT”) :
Программатор на FT232RL без управляющего МК.
   Если эти устройства отобразились в диспетчере устройств, то можно идти дальше. Следующим шагом идёт настройка микросхемы FT232RL так, чтобы она генерировала тактовый сигнал 6 мГц. Для этого открываем программу FT PROG из архива и нажинаем Devices – Scan and Parse. Через несколько секунд программа найдёт чип и появится такое окно:
Программатор на FT232RL без управляющего МК.
   Теперь переходим на вкладку USB_Config_Descriptor и выставляем значение Max Bus Power = 500:
Программатор на FT232RL без управляющего МК.
   Остальное не трогаем. Эта настройка позволит получать из шины USB ток до 500 мА. Теперь переходим на Hardware_Specific – IO_Controls и устанавливаем в поле С4 значение CLK6:
Программатор на FT232RL без управляющего МК.
   После этой настройки на выводе CUSB4(12) будет генерироваться импульс с частотой 6 мГц. Далее можно поменять идентификатор устройства т.е. имя, под которым его распознаёт система, когда драйверы не установлены. Переходим на USB_String_Descriptors и пишем в поле Product Description своё название. Я написал “Программатор USBBit”:
Программатор на FT232RL без управляющего МК.
   Настройка завершена и теперь нужно сохранить изменения. Нажимаем на верхней панели Devices – Program. Через пару секунд операция завершится и можно закрывать утилиту. После этого отключите устройство от пк на несколько секунд, а потом включите. Далее попробуем запрограммировать мк.

   Этот программатор поддерживает только модифицированная AVR Dude. Поскольку программа консольная, я использую графическую оболочку SinaProg. Оболочка+модифицированная дудка находятся в архиве в конце статьи. Скачивайте их и распаковывайте куда-нибудь поближе. Например, C:\usbbit\. В этом пути не должно быть никаких папок с русскими названиями и пробелами, иначе программа не будет работать!!! Запускайте SinaProg и выбирайте программатор USBBit, порт USB и максимальную скорость. Дальше подключите программатор к мк и к компу. Подайте на мк питание и нажмите кнопку Search:
Программатор на FT232RL без управляющего МК. Из логов дуды следует, что она обнаружила программатор, а потом и мк – ATnega16. Специально для этой статьи я написал программу для мк на языке ассемблер, которая мигает диодом. Текст этой программы: .include “m16def.inc”;Подключаем файл с макроопределениями для ATmega16.
.macro OUTI; Макрос, позволяющий вывести значение в одну строчку кода.ldi r16,@1OUT @0, r16.endmacro
ldi r16,@1
out @0,r16
.endmacro
OUTI SPL, low(RAMend);Инициализация стека.
OUTI SPH, high(RAMend)
OUTI DDRD,1<<DDD4
Main:; Бесконечный цикл мигания диодом.
OUTI PORTD,1<<PD4; Зажигаем диод.
rcall delay; Ждёмс!!!
OUTI PORTD,0<<PD4; Гасим диод.
rcall delay; Ждёмс!!!
rjmp main
delay:; Подпрограмма задержки
ldi r16,0
ldi r17,0
ldi r18,5
loop:
DEC r16
BRNE loop
DEC r17
BRNE loop
DEC r18
BRNE loop
ret

Далее компилируем программу и загружаем в мк. Светодиод замигает.  Итог: 
Программатор получился очень удобный и быстрый. Надо только суметь запаять FT232RL, но я думаю у вас всё получится! Удачи!
Ссылки: 
1)  Архив с драйверами, программами, платой.  
   
Раздел: [USB-устройства]

Сохрани статью в:

Оставь свой комментарий или вопрос:


Наше сообщество в VK, а ты с нами? Присоединяйся!!!
Тясячи схем в категориях:
-> Прочее
-> Измерительная техника
-> Приборы
-> Схемыэлектрооборудования
-> Источники питания (прочие полезные конструкции)
-> Теоретические материалы
-> Справочные материалы
-> Устройства на микроконтроллерах
-> Зарядные устройства (для батареек)
-> Зарядные устройства (для авто)
-> Преобразователи напряжения (инверторы)
-> Все для кулера (Вентилятора)
-> Радиомикрофоны, жучки
-> Металоискатели
-> Регуляторы мощности
-> Охрана (Сигнализация)
-> Управление освещением
-> Таймеры (влажность, давление)
-> Трансиверы и радиостанции
-> Конструкции для дома
-> Конструкции простой сложности
-> Конкурс на лучшую конструкцию на микроконтроллерах
-> Конструкции средней сложности
-> Стабилизаторы
-> Усилители мощности низкой частоты (на транзисторах)
-> Блоки питания (импульсные)
-> Усилители мощности высокой частоты
-> Приспособления для пайки и конструирования плат
-> Термометры
-> Борт. сеть
-> Измерительные приборы (тахометр, вольтметр итд)
-> Железо
-> Паяльники ипаяльные станции
-> Радиопередатчики
-> Вспомогательные устройства
-> Телевизионная техника
-> Регуляторы тембра, громкости
-> Блоки питания (лабораторные)
-> Усилители мощности низкой частоты (на микросхемах)
-> Другие устройства для усилителей
-> Cветовое оформление новогодней ёлки или праздничного зала
-> Глушилки
-> Телефонные жуки
-> Инфракрасная техника
-> Медицинская техника
-> Телефония
-> Для животного мира
-> Конструируем усилители
-> Антенны и усилители к ним
-> Звонки
-> Электронные игрушки
-> Усилители мощности низкой частоты (ламповые)
-> Управление двигателями (питание от однофазной сети)
-> Программаторы микроконтроллеров
-> Сверлилки
-> Изучаем микроконтроллеры
-> Радиоприемники
-> Сигнализации
-> Сотовая связь
-> USB-устройства
-> Блоки питания (трансформаторные)
-> Радиостанции простые в изготовлении
-> Источники питания (для усилителей)
-> Прочеее
-> защита от короткого замыкания (электронные предохранители)
-> Зарядные устройства (для радиостанций)
-> Мигалки
-> Cварочное оборудование
-> Кодовые электронные замки
-> Блоки питания (бестрансформаторные)
-> Часы
-> Управление поворотниками
-> Зажигание
-> Управление водой (насосы для скважин или колодцев, полив растений)
-> Моделирование
-> Блоки управления стеклоочистителями
-> Предварительные усилители
-> Защита от перегрузки и перегрева
-> Динамики
-> Ремонт бытовой техники
-> Дистанционное управление компьютером
-> Акустические микрофоны и преобразователи
-> Спутниковое ТВ
-> Gsm антенны, примочки, усилители, ретрансляторы.
-> Пищалки
-> Роботы
-> Ретрансляторы
-> Паяльники и паяльные станции
-> Звуковые сигнализаторы
-> Рули и джойстики
-> Схемы электрооборудования
-> Все для "кулера" (Вентилятора)
-> Работа с BGA микросхемами
-> Фильтры
-> Сабвуферы
Рейтинг@Mail.ru