Універсальний перетворювач UART-USB на основі FT232R

При виготовленні майже будь-якого пристрою з процесорним керуванням виникає потреба забезпечити його зв'язок з комп'ютером. Причому часто цей зв'язок потрібний тільки при налагодженні і в подальшій роботі приладу зовсім не потрібно. А часом і сам прилад надалі не потрібний — так один раз пограв і засунув у далеку скриньку. Ліпить у кожному такому девайсі перетворювач інтерфейсу з обв'язкою ліньки, та й жаба душить. А ще й роз'єм потрібен... Що б не виникало таких проблем потрібно під рукою мати зовнішній перетворювач інтерфейсу, що легко підключається до того девайсу, з яким зараз працюєш. Які інтерфейси використовувати особливо вибору не варто - найпростіше і універсальне що можна придумати в даний час - це uart на стороні девайса і USB на стороні комп'ютера. З вибором перетворювача теж думати особливо нічого — гідних альтернатив FT232RL для вирішення цих завдань на горизонті не видно (серед основних бонусів цієї мікрофункціональності, якісні дрова, легкість монтажу і мінімум необхідної обв'язки). Робити простий дата-кабель нудно і не цікаво, та й не завжди його вистачає, крім того, FT-шка має багато додаткових фішок, втрачати які не хочеться. Загалом, вирішив я зробити щось на кшталт демо-плати для мікросхеми FT232R. Після вдумливого куріння даташита, намалювалася приблизно така схема: Основним є трививідний роз'єм XP5, на який виведені лінії RxD і TxD. Власне, в 90% випадків достатньо його одного (саме тому ці лінії відокремлені в окремий роз'єм). На роз'ємі XP4 можна підштовхнути до решти ліній послідовного порту, а також до висновків CBUS. Якщо CBUS налаштовані не по дефолту, слід відключити від них світлодіоди, знявши відповідні перемички на роз'ємі XP3 (так, спочатку їх требапоставити, щоб світлодіоди блимали). Крім того, що всі функціональні ноги мікрохи виведені на роз'єми, плата дозволяє познущатися з харчування себе і девайса. Робиться це за допомогою перемичок та проводів на роз'ємах XP1 та XP2. Для тих, хто ще не працював з FT232, нагадаю — на висновок VCCIO подається рівень напруги, на якому повинні працювати ноги введення виводу (у зв'язку з цим, до речі, світлодіоди живляться саме від VCCIO, а не від VCC). І ще одне зауваження щодо харчування: за замовчуванням FT232 дозволяється їсти не більше 100мА, якщо потрібно живити цільовий девайс від USB і він пристойно жере, то щоб отримати свої належні 500мА потрібно налаштувати FT232 за допомогою сервісної програми. Ось коротка інструкція з налаштування перетворювача з еквівалентними схемами (зліва схема включення, праворуч схема як підключати дроти і куди ставити перемички):

  1. Роздільна живлення - перетворювач живиться від USB, девайс від свого джерела. Тут три варіанти залежно від живлення цільового пристрою: а) девайс працює на 5В
    універсальний
    б) девайс працює на 3.3В
    основі
    в) девайс працює на іншому (1.8В - 5.25В) рівні живлення
    основі
  2. Загальне живлення від USB - перетворювач живиться від шини, аксесуар від перетворювача. Тут у мене вийшло чотири варіанти різного ступеня абсурду: а) девайс працює на п'яти вольтах
    універсальний
    б) девайс працює на 3.3В (УВАГА. в цьому випадку девайс повинен споживати струм не більше 50mA, а світлодіоди краще відключити, інакше можна спалити FT-ку)
    перетворювач
    в) девайс працює на 3.3В, але живиться від 5В
    перетворювач
    г) девайс працює на взагалі фіг знає чим (1.8В - 5.25В), але харчується від 5В
    основі
  3. Загальне харчування від девайсу (може знадобитися при прототипуванні, коли передбачається, що FT232R буде у складі кінцевогодевайса). Тут можна виділити всього два варіанти - харчування дорівнює VCCIO і харчування не дорівнює VCCIO (головне, щоб харчування було не нижче 4В, так як зовнішній кварц для FT не закладений): а) напруга живлення і напруга обміну дорівнюють
    основі
    б) напруга живлення та напруга обміну різняться
    універсальний
У результаті вийшов ось такий їжачок розмірами 35x45мм.
перетворювач
Друкарська плата:
універсальний
Їжачку на спину ще пропонувалося повість мезонінну плату, що робить його за сумісництвом програматором для AVR, але до виготовлення справа поки не дійшла, тому що зараз не дуже потрібно, та й роз'єми для мезонінних плат я так і не здобув.
перетворювач
Принцип роботи програматора пояснювати не буду — про подібні схеми вже писали багато, зазначу лише основні схемотехнічні особливості. По-перше, зверну увагу на те, що у мене харчування таргета за замовчуванням відв'язане від живлення самого модуля, бо недобре це, коротити живильник девайса і живильник програматора (ну це, звичайно, коли девайс не від програматора запитується, для цього випадку передбачена перемичка XP8).
перетворювач
Десятиконтактний роз'єм програмування XP7 складається із стандартного шестиконтактного ISP та двох контактів порту uart, що дозволяє скоротити кількість проводів, підключених до піддослідного девайсу в процесі його розробки та налагодження. Передбачається на платі пристрою ставити такий самий роз'єм і з'єднувати їх шлейфом, в якому RX і TX поміняні місцями. Викусані дві ноги дозволяють програмувати таку плату стандартним програматором із шестиконтактною головою.
універсальний
Пачка резисторів по 33Ом призначена для того, щоб захиститися від короткочасного КЗ на девайсі, а 10k резистор підтягує до землі лінію RX щоб позбутися можливих перешкод. Якщо знадобиться зовнішній тактовийсигнал, можна налаштувати його виведення на будь-яку з ніг CBUS. Ну ось, начебто все. У доданому архіві є комплект файлів для цих двох плат у форматі Altium Designer та друковані плати у форматі P-CAD PCB.

Коментарі ( 24 )

добре, придатно :) реквестую менші фотки (зі збільшенням по кліку хоча б), а то на 1024p спливло за край.

ритуальне питання: плати де замовляв?

Щодо плат — швидше за все Резоніт, але точно сказати не можу, ці не я на виготовлення віддавав, та й давно це було.

заливай кудись ще. пікасу, вона вміє віддавати прев'ю зі збільшенням по кліку, розмірами 400, 600, 1000 пх. або хабраефект. але ресайзити самому тоді :)