Электронный компонент:Адаптер UartSBee V4.0

Материал из Онлайн справочника
Перейти к: навигация, поиск

Перевод: Максим Кузьмин (Cubewriter)
Перевел 1892 статей для сайта.

Контакты:

Проверка/Оформление/Редактирование: Мякишев Е.А.


Ambox content.png Черновик


Адаптер UartSBee V4.0[1]

UartSBee V4 Xbs4 1.jpg

UartSBee v4.0 – это адаптер USB-Serial, совместимый с FTDI-кабелем и оснащенный Bee-сокетом (20 контактов, шаг 2 мм). Чип FT232RL, на базе которого сделан этот адаптер, можно использовать, во-первых, для коммуникации с микроконтроллером и записи прошивки на него, а во-вторых, для подключения ПК к беспроводному проекту через Bee-совместимый модуль. Кроме того, UartSBee оснащен выводами для портов FT232RL, через которые выполняется режим «bit-bang». Это восемь последовательных I/O контактов, которые можно использовать в качестве 8-битного параллельного порта.

Купить UartSBee V4.0 можно по этой ссылке.

Версии

  • UartSBee V3.1 (выпущена 2 сентября 2010 года) – уменьшен размер, убраны контакты Bluetooth на нижней стороне
  • UartSBee V2.3 (выпущена 21 июля 2009 года) – постоянный ток на 3.3-вольтовом контакте; поддержка силы тока до 500 мА (чтобы улучшить работу с XBee Pro)
  • UartSBee V2.1 (выпущена 1 февраля 2009 года) – первый публичный релиз

Функционал

  • Совместимость с кабелем FTDI
  • Совместимость с USB 2.0
  • I/O контакты, поддерживающие напряжение 3.3 вольта и 5 вольт
  • Выходное напряжение 3.3 вольта и 5 вольт
  • Кнопка сброса для Bee-модуля
  • Поддержка режима «bit-bang» (восемь последовательных I/O контактов)
  • Светодиоды для UART и Bee-модулей

Варианты использования

Меры предосторожности

Адаптер UartSBee v4.0 оснащен переключателем напряжения между 3.3 и 5 вольтами. Перед подключением адаптера к устройству убедитесь, что выставили переключатель в нужное положение.

Схема

UartSBee V4.0 Sch 2.png

Характеристики

Главные характеристики

Электрические характеристики

Параметр Минимальное значение Стандартное значение Максимальное значение Единица измерения
Входное напряжение - 5 5 Вольты (постоянный ток)
Энергопотребление - - 500 Миллиамперы
Выходное напряжение 3.3 - 5 Вольты (постоянный ток)

Расположение компонентов

Uartsbee-block-diagram.jpg
  • В левой нижней части находится маленькая кнопка, при помощи который выполняется сброс Bee-совместимых устройств
  • Помимо гнезда 2х10 для Bee-модулей адаптер также оснащен дополнительными контактными площадками для контактов этого гнезда, а также ISP-портом 2х3. Их можно использовать напрямую или припаять к ним гребешки

Использование

Эта глава расскажет о вариантах применения адаптера UartSBee V4.0.

Порт USB-Serial

Адаптер UartSBee часто используется в качестве посредника между USB-портом и COM-портом (т.е. последовательным портом). Полученный интерфейс можно использовать для коммуникации с последовательным портом микроконтроллера или записи прошивки на микроконтроллер через ISP-порт на базе UART.

Windows

1. Если вы используете Windows при первом подключении UartSBee V4.0, операционная система попросит у вас драйвер:

UartSbee Detected Windows 3.JPG

2. Загрузите драйвер для виртуального COM-порта с сайта FTDI.

3. Кликните на него. Откроется мастер для установки драйвера. Выберите вариант «Установка из указанного места»

UartSbee Driver install 1 4.JPG

4. Выберите путь к месту, куда загружен драйвер

UartSbee Driver install 2 5.JPG

5. Если вы загрузили неподписанный драйвер, Windows покажет окно с предупреждением. Кликните на «Все равно продолжить»

UartSbee Driver install 2.1 6.JPG

6. Драйвер UartSBee успешно установлен. Windows присвоит ему номер COM-порта вроде «COM10», «COM11» и т.д. Точный номер смотрите в «Диспетчере задач». В моем случае UartSBee был присвоен номер «COM16»:

UartSbee Driver install 3 7.JPG

GNU/Linux

Во всех современных версиях GNU/Linux уже предустановлены драйверы для FT232RL. Чтобы проверить, определился ли UartSBee, дайте команду lsusb. В результате должно появиться примерно следующее:

UartSBee V4 Lsub 8.png

GNU/Linux должна присвоить FT232RL имя вроде «/dev/ttyUSB0», «/dev/ttyUSB1» и т.д.

Чтобы проверить работу последовательного порта, подключите к UartSBee контакты RX и TX, а затем воспользуйтесь терминалом вроде cutecom, чтобы настроить параметры устройства:

Uartsbee-txd-rxd-connected 9.JPG

Любой символ, напечатанный в терминал, через какое-то время будет отправлен обратно.

UartsBee-CuteCom 10.png

Тот же функционал можно найти в терминале Hyperterminal (Windows).

Использование UartSBee в качестве источника питания и программатора

Адаптер UartSBee оснащен двумя отдельными контактами (5V и 3V3), и это позволяет ему выдавать питание с двумя разными напряжениями: 5 вольт и 3.3 вольта. Кроме того, его I/O контакты тоже «амбивалентны» – они могут использовать разную вольтовую логику: 5 вольт (TTL) и 3.3 вольта (CMOS). На картинке ниже изображен микроконтроллерный проект, собранный при помощи макетной платы. На нем микроконтроллер LPC1343 ARM Cortex-M3 подключен к адаптеру UartSBee. Поскольку чип LPC1343 – это 3.3-вольтовый девайс, переключатель питания у него выставлен на 3.3 вольта. Записывать прошивку на LPC1343 можно через интерфейс UART.

Кроме того, этот проект можно расширить любым микроконтроллером/CPLD, который поддерживает запись прошивки через UART или SPI (но для этого потребуется использовать режим «bit-bang»).

На картинке ниже UartSBee v3.1 служит источником 3.3-вольтового питания и 3.3-вольтовым UART-портом для записи прошивки на LPC1343:

UartSBee as uCPowerSupplyAndProgPort BreadBoard.JPG

Переключатель I/O контактов выставлен в положение 3V3:

UarSBee-Switch 3.3V selected.jpg

Использование UartSBee для беспроводного управления Bee-модулями через ПК

Беспроводная периферия для ПК-проектов

20-контактное (2 гребешка по 10 контактов) гнездо на адаптере UartSBee позволяет подключать к компьютеру Bee-модули вроде XBee, Bluetooth Bee, RF Bee, Wifi Bee и GPS Bee. Это упрощает управление беспроводными проектами через ПК. Поскольку многие Bee-модули поддерживают интерфейс UART, это также упрощает загрузку прошивки на них через ПК.

Беспроводная периферия для микроконтроллерных проектов

Это 20-контактное гнездо также можно использовать для подключения к шине UART. Которой оснащаются микроконтроллерные платы вроде Seeeduino. Более подробно читайте в документации к своему Bee-модулю.

Модуль Xbee, подключенный к UartSBee


Модуль Bluetooth Bee, подключенный к UartSBee

Режим «bit-bang»

Важным отличием UartSBee v3.1 от других адаптеров USB-Serial на базе F232RL является то, что все I/O контакты чипа, используемые для режима «bit-bang», выведены на гребешковые контакты.

Режим «bit-bang» – это специальная функция FT232RL, благодаря которой восемь I/O контактов (D0-D7) можно использовать в качестве двунаправленных GPIO-линий. Это позволяет управлять этими линиями с компьютера, а также считывать данные с этих линий. Чип FT232RL поддерживает три разновидности режима «bit-bang»:

Асинхронный режим «bit-bang»

Все данные, записываемые на устройство, передаются на заданные выходные контакты. Скорость перемещения выходных данных задается генератором скорости передачи данных. В этом режиме все восемь I/O линий можно независимо друг от друга настроить на ввод или вывод данных.

Синхронный режим «bit-bang»

В этом режиме данные передаются синхронно. Сначала считываются входные данные, после чего устройству передаются выходные данные (в виде байта). Следовательно, чтобы прочесть входные данные, нужно выполнить операцию записи.

Режим CBUS «bit-bang»

Это специальный режим, для которого нужно перепрограммировать EEPROM-память чипа FT232RL. Он использует сигналы C0-C3.

Режим «bit-bang» чипа FT232RL хорошо описан в этом PDF-документе.

Эта таблица показывает, какие контакты чипа задействованы в «bit-bang»:

Контакт UartSBee Контакт, преобразованный режимом «bit-bang»
TxD D0
RxD D1
RTS D2
CTS D3
DTR D4
DSR D5
DCD D6
RI D7

Простой пример использования режима «bit-bang» показан на картинке ниже. Здесь контакт DTR (D4) адаптера UartSBee v3.1 через макетную плату подключен к светодиоду. Мигание светодиодом управляется при помощи программы, установленной на ПК.

UartSBee bit-bang-DTR.jpg


UartSBee Bottom Bit Bang.jpg

Для использования режима «bit-bang» необходимо установить драйвер D2XX. Перед его установкой нужно удалить драйвер для виртуального COM-порта чипа FT232RL. В системе GNU/Linux этот драйвер запускается в режиме ядра. В качестве альтернативы вместо D2XX можно использовать бесплатный оупен-сорсный драйвер libFTDI. Он работает на Windows, GNU/Linux и Mac OS. На GNU/Linux он запускается в режиме пользователя.

Следовательно, уже установленный FT232RL-драйвер удалять не нужно.

Драйверу libFTDI требуется libUSB, и скачать его можно отсюда.

Код ниже можно скомпилировать аналогично файлам libFTDI. Самый простой способ – это скопировать код ниже и вставить его в уже существующий файл «*.c», а затем создать драйвер при помощи:

./configure
make

Вот сам код:

  1. /*
  2. Blinky.C :
  3. Адаптер UartSBee v3.1 (FT232RL), режим «bit-bang»
  4. Мигание светодиодом
  5.  
  6. Цепь:
  7.  
  8. * Подключите контакт DTR к аноду светодиода
  9. * Один конец анода подключите к GND, а другой – к катоду светодиода
  10.  
  11. */
  12.  
  13. #ifdef __WIN32__
  14. #define sleep(x) Sleep(x)
  15. #endif
  16.  
  17. // битовая маска для восьми I/O контактов:
  18. #define TXD 0x01  //  в двоичном виде - 00000001
  19. #define RXD 0x02  //  в двоичном виде - 00000010
  20. #define RTS 0x04  //  в двоичном виде - 00000100
  21. #define CTS 0x08  //  в двоичном виде - 00001000
  22. #define DTR 0x10  //  в двоичном виде - 00010000
  23. #define DSR 0x20  //  в двоичном виде - 00100000
  24. #define DCD 0x40  //  в двоичном виде - 01000000
  25. #define RI  0x80  //  в двоичном виде – 10000000
  26.  
  27.  
  28. #include <stdio.h>
  29. #include <ftdi.h>
  30.  
  31. int main()
  32. {
  33.     unsigned char ouputState = 0;
  34.     struct ftdi_context ftdic;
  35.  
  36.     /* 1. Инициализируем устройство ftdi */
  37.  
  38.     ftdi_init(&ftdic);
  39.  
  40.     /* 2. Открываем устройство, используя идентификаторы VID/PID */
  41.  
  42.     if(ftdi_usb_open(&ftdic, 0x0403, 0x6001) < 0)
  43.     {
  44.         printf("Unable to UartSBee v3.1");
  45.         return 1;
  46.     }
  47.  
  48.     /* 3. Включаем «bit-bang» для линии DTR */
  49.  
  50.     ftdi_set_bitmode(&ftdic, DTR, BITMODE_BITBANG);
  51.  
  52.     /* 4. Мигаем светодиодом раз в секунду */
  53.  
  54.     while(1) {
  55.         ouputState ^= DTR;
  56.         ftdi_write_data(&ftdic, &ouputState, 1);
  57.         sleep(1);
  58.     }
  59. }

Режим «bit-bang» чипа FT232RL можно использовать, чтобы сконструировать порты AVR ISP, JTAG, SPI и I2C. Более подробно смотрите ниже, в разделе «Полезные ссылки».

На картинке ниже показан UartSBee, подключенный к Seeeduino через AVR ISP:

UartSbee ISP Connection BitBang.jpg

Полезные ссылки

Внешние ссылки

Оупен-сорсные драйверы

Другие материалы об использовании FT232RL

См.также

Внешние ссылки

  1. wiki.seeed.cc - UartSBee V4