В умовах, коли сучасні комп'ютери стрімко втрачають COM-порти, перетворювач USB <-> COM - штука для радіохламера дуже корисна і потрібна. Але і перетворювач USB <-> UART - теж річ корисна і потрібна. Мені, звичайно, захотілося мати і те, і інше, і ще чого-небудь, і щоб все це не дуже дорого.
Купити або зібрати будь-яку з подібних штуковин сьогодні не проблема. В мережі - купа схем, в магазинах - купа девайсів. Однак, як виявилося, - купити їх можна тільки окремо один від одного! І це не дивлячись на те, що все, розглянуті мною, перетворювачі USB <-> COM перетворять рівні сигналів спочатку в TTL, а вже потім в RS-232. Зрозуміло жодне з подібних рішень не влаштувало мене в плані універсальності. Навіщо я буду купувати окремо перетворювач USB <-> UART, якщо він вже є в складі USB <-> COM? Розмірковуючи подібним чином, я вирішив, що зайвих грошей у мене немає і найкращим рішенням буде зробити свій власний універсальний перетворювач.
В якості основи, була взята добре відома мікросхема cp2102. По-перше, вона дозволяє емулювати повноцінний COM-порт (всі лінії, а не тільки Rx, Tx), по-друге, вона має мінімум обважування і дозволяє зробити плату мінімальних розмірів, ну і по-третє, у неї виявилася найпривабливіша ціна . Схема перетворювача практично без змін була взята з даташіта до цієї микрухой, я тільки розрізав її навпіл, щоб при необхідності мати можливість відокремити USB to UART від UART to RS-232.
Схема перетворювача USB to UART:
Схема перетворювача UART to RS232:
У підсумку вийшло навіть не два (як спочатку замишлялося) а цілих три пристрої в одному. Обидві частини розробленого девайса можна використовувати як самостійні перетворювачі USB <-> UART і UART <-> RS232 (шкода тільки, що останнім потрібний зовнішнє живлення). Поєднавши дві частини разом, отримуємо перетворювач USB <-> COM. Для сполучення частин перетворювача я використовував роз'єми IDC-14F і BH-14, які при правильній розводці дуже вдало припаиваются до двосторонніх платам (нижче на фото можна побачити, як саме).
Фото готового пристрою:
Єдиний важкий момент - пайка мікросхеми cp2102, оскільки вона випускається в QFN корпусі. Паяти її потрібно феном, попередньо облуди припаював контакти на мікросхемі та майданчики на платі. При цьому зовсім не обов'язково використовувати якісь спеціальні дорогі флюси. Досить звичайної соснової каніфолі, тільки її треба розчинити в спирті і потім наносити на майданчики шприцом або спеціальним пензликом. Якщо спирту немає - розчинити каніфоль можна в горілці, проте в цьому випадку після нанесення розчину доведеться трохи почекати, оскільки вода випаровується значно гірше спирту.
Роз'єм USB спеціально з'єднаний з платою гнучким проводом, а не жорстко до неї припаяний. Як показує практика, такі перетворювачі дуже часто використовуються для підключення до комп'ютера різних конвертерів (COM to HART, COM to RS485 і тому подібних) і при жорсткій пайку USB-разёма саме він найчастіше відламується, не витримуючи ваги всього підключеного до перетворювача обладнання.
Окремо хотілося б зупинитися на питанні вибору конденсаторів. У даташіте вказані номінали конденсаторів по харчуванню 4,7 мкФ і 1 мкФ. Найчастіше для економії місця на платі або з якихось інших причин замість них ставлять конденсатори поменше. Знову ж таки, як показує практика, це може привести до нестабільності харчування підключаються до перетворювача пристроїв (які не мають зовнішнього живлення і повинні харчуватися від COM-порту) і, як наслідок, до їх непрацездатності.
Драйвера для описаного перетворювача можна скачати з сайту silabs.com (виробник мікросхеми cp2102).
Тестувати зібраний девайс зручно програмою RH_COM_tester, яку можна завантажити тут (оригінали - там же).
Якщо виникли складнощі з самостійною збіркою або зовсім відсутнє вільний час - цей девайс можна замовити у нас на сайті.