FT2232D-Breakout: плата для гальванической развязки USB Печать
Добавил(а) microsin   

Макетная плата FT2232D-Breakout предназначена для создания гальванически изолированных устройств USB: COM-портов, программаторов, устройств ввода/вывода. Изоляция USB часто нужна для создания приборов с особыми эксплуатационными требованиями в медицине, промышленности, измерительной технике.

На плате имеется два макетных поля (20X9 отверстий с шагом 2.54 мм), каждое размером 50.8X22.86 мм, на которых может быть собрана схема пользователя. Эти поля можно отрезать для уменьшения общих габаритных размеров платы, без макетных полей плата имеет размеры 50.8X33 мм.

130502FT2232D-Breakout-v02-sch 130502FT2232D-Breakout-dimensions 130502FT2232D-Breakout-v01-mount-top 130502FT2232D-Breakout-v01-mount-bottom

Функционально плата FT2232D-Breakout является аналогом DLP-2232M-G USB Adapter [1], и отличается только тем, что у FT2232D-Breakout имеются макетные поля и гальваническая изоляция USB. Гальваническая изоляция обеспечивается микросхемой ADuM4160 и DC-DC преобразователем 5V-5V.

[Функциональное описание FT2232D-Breakout]

На макетной плате FT2232D-Breakout используется чип USB UART/FIFO FT2232D компании FTDI, являющийся третьим поколением разработки USB-микросхем FTDI. В этой микросхеме имеется два многофункциональных контроллера UART/FIFO, каждый их которых может быть индивидуально сконфигурирован в различных режимах работы. В дополнение к интерфейсу UART, FIFO, и режимам ввода/вывода Bit-Bang (которые уже имелись в микросхемах второго поколения FT232BM и FT245BM), микросхема FT2232D также поддерживает различные дополнительные режимы работы, включая интерфейс MPSSE (Multi-Protocol Synchronous Serial Engine), специально разработанный для синхронных последовательных протоколов передачи, таких как JTAG и шина SPI. Таким образом, на основе макетной платы FT2232D-Breakout могут быть разработаны высокоскоростные отладчики и программаторы. Для Windows имеется готовый драйвер D2XX и программные DLL для приложений USB-JTAG, USB-SPI и USB-I2C [2, 7].

Печатная плата FT2232D-Breakout имеет 2 краевых 20-контактных разъема, на которые выведены порты ввода/вывода канала A и канала B микросхемы FT2232D (см. таблицу). На плате имеется транзистор MOSFET, который может управлять подачей питания на внешние устройства в зависимости от состояния режима питания микросхемы FT2232D (это позволяет регулировать энергопотребление собранных на плате USB-устройств). Цоколевка разъемов и разводка сигналов совпадает с платой DLP-2232M-G USB Adapter [1] - см. раздел Цоколевка коннекторов платы FT2232D-Breakout.

Режим работы микросхемы FT2232D может быть настроен программно с помощью драйвера D2XX, либо с помощью GUI утилиты FTDI FT_Prog [2, 7].

Области практического применения платы FT2232D-Breakout

• Двухпортовые конвертеры 1 USB <--> 2 RS232.
• Двухпортовые конвертеры 1 USB <--> 2 RS422 / RS485.
• Добавление к старым разработкам интерфейса USB.
• Программаторы USB JTAG.
• Конвертеры USB <--> SPI.
• Управление промышленным оборудованием через USB.
• Добавление к приборам возможности обновления через USB.
• Конвертеры USB в синхронный последовательный интерфейс.
• Подключение к USB для разработок, основанных на MCU (процессор, микроконтроллер), PLD, FPGA (разновидности микросхем программируемой логики).
• Передача через USB звука и низкоскоростного видео.
• Интерфейсы USB к смарт-картам.
• Интерфейсы USB к картам FLASH.
• Считыватели штрих-кодов

Все вышеперечисленные варианты приложений реализуются с гальванической изоляцией от подключенного по USB компьютера. Один нисходящий (downstream) порт USB преобразуется в два канала ввода/вывода IO. Эти два канала могут индивидуально сконфигурированы либо как UART (в стиле микросхем FT232), либо как интерфейс FIFO (в стиле микросхем FT245). Несколько новых специальных режимов могут быть разрешены в работу с помощью внешней микросхемы памяти EEPROM, либо с помощью использования специальных команд драйвера DLL. Это режимы синхронного управления портами (Synchronous Bit-Bang Mode), режим FIFO с эмуляцией процессорной шины (CPU-Style FIFO Interface Mode), режим многофункционального последовательного интерфейса (Multi-Protocol Synchronous Serial Engine Interface Mode, MPSSE), режим эмуляции хостом шины микроконтроллера (MCU Host Bus Emulation Mode) и режим быстрого последовательного интерфейса с оптоизоляцией (Fast Opto-Isolated Serial Interface Mode). Дополнительная возможность использования выходов повышенной мощности позволит выводам UART / FIFO IO управлять нагрузкой в 3 раза мощнее, чем обычно (это позволяет подключить шину данных к большему количеству устройств).

130505FT2232D-Breakout-simple-diagram

На рисунке выше приведена упрощенная схема платы FT2232D-Breakout. Вот её основные составные части:

Генератор 6 МГц работает вместе с внутренним умножителем на 8 микросхемы FT2232D, частота стабилизирована керамическим резонатором.

U4 FT2232D является основным рабочим узлом схемы. В его составе имеются многофункциональные контроллеры UART/FIFO, которые обрабатывают перенос данных между двумя буферами RX, двумя буферами TX и регистрами приема и передачи UART/FIFO. Когда канал A или B сконфигурирован как UART, контроллер производит преобразование 7/8 бит параллельных данных в последовательные данные и обратно, когда работает интерфейс RS232 (RS422 и RS485). Для UART поддерживаются стандартные сигналы RTS, CTS, DSR, DTR, DCD и RI. Для интерфейса с приемопередатчиками RS485 также имеется сигнал управления передатчиком TXDEN. Также, если это необходимо, аппаратно поддерживаются опции управления обменом RTS/CTS, DSR/DTR и X-On/X-Off (handshaking), что обеспечивает малое время отклика и оптимальное управление потоком данных. UART также поддерживает установку и детектирование события BREAK.

Интерфейс EEPROM (U3 93LC46B), имеющийся на плате, позволяет независимо конфигурировать каждый канал либо как UART (режим 232), либо как параллельный FIFO (режим 245). EEPROM используется также для разрешения работы интерфейса FIFO в стиле CPU, а также режимы для быстрой передачи данных через оптоизолированный интерфейс (Fast Opto-Isolated Serial interface). Выбор типа используемого драйвера (VCP или D2XX) также сохраняется в EEPROM.

EEPROM также может использоваться для настройки USB VID, PID, Serial Number (серийный номер устройства), Product Description Strings (строки описания продукта) и Power Descriptor value (описатель параметра энергопотребления). Еще в EEPROM сохраняются параметры Wake Up (возможность пробуждения хоста), Isochronous Transfer Mode (режим изохронной передачи), Soft Pull Down on Power-Off (мягкое отключение выводов IO при выключении питания), режим работы USB 2.0.

Настройки в EEPROM программируется прямо на плате FT2232D-Breakout с помощью программы MPprog или с помощью более продвинутой программы FT_PROG, см. [5, 7].

Возможности платы FT2232D-Breakout

• Гальваническая изоляция компьютера, к которому по USB подключена плата.

• На одной плате имеется два канала (A и B) последовательных и параллельных портов в зависимости от настроенного режима работы микросхемы FT2232D. Каналы могут работать либо в режиме RS232 (как в обычных микросхемах FT232), либо в режиме FIFO (как с микросхемами FT245), либо в режиме BitBang, либо могут использоваться специальные дополнительные режимы. Режим работы может быть настроен программно с помощью драйвера D2XX, либо с помощью GUI утилиты FTDI FT_Prog [2, 7], и сохранен в памяти EEPROM микросхемы 93LC46B.

• Поддержка протокола USB полностью осуществляется на плате средствами чипа FT2232D, при этом не требуется писать firmware для поддержки USB на аппаратном уровне.

• Интерфейс UART полностью поддерживает аппаратно сигналы квитирования и управления обменом (Handshaking & Modem interface). Уровни всех сигналов TTL-совместимые.

• Интерфейс UART поддерживает режимы 7/8 бит данных, 1/2 стоп-бита, и варианты бита четности Odd/Even/Mark/Space/No.

• Для UART (RS232) скорость обмена может быть в интервале от 300 бод до 1 мегабод.

• Для RS422 / RS485 скорость обмена может быть в интервале от 300 бод до 3 мегабод.

• Для приложений последовательного обмена RS485 имеется управление Auto Transmit Enable с помощью вывода TXDEN.

• Интерфейс FIFO в стиле FT245BM имеет двунаправленную шину данных и простой 4-проводный интерфейс управления обменом (handshake).

• Скорость обмена может достигать до 1 мегабайта в секунду.

• Имеется опция расширенного интерфейса управления состоянием ножек портов (Enhanced Bit-Bang Mode). Чип FT2232D поддерживает обычный режим Bit Bang, который всегда был в микросхемах серии BM. В режиме Bit Bang 8 сигнальных линий FIFO могут быть переключены между режимом интерфейса FIFO и 8-битным параллельным портом ввода-вывода IO. Пакеты данных могут быть отправлены в устройство и они будут последовательно отправлены на интерфейс со скоростью, задаваемой внутренним таймером (наподобие прескалера для скорости последовательного порта). Чип FT2232D позволяет расширить этот режим выводом внутренних стробов RD# и WR#, которые могут управлять внешней логикой при доступе к шине IO Bit-Bang.

• Новый режим синхронного управления портами (Synchronous Bit-Bang Mode). В этом режиме устройство будет читаться только одновременно с записью, у отличие от асинхронных процедур чтения и записи под управлением генератора скорости baud rate. Синхронное управление может упростить для управляющей программы измерение выходного формируемого сигнала, так как данные будут возвращены одновременно с их выводом.

• Новый режим FIFO в стиле процессорной шины (CPU-Style FIFO Interface Mode).

• Новый режим работы интерфейса Nulti-Protocol Synchronous Serial Engine (MPSSE).

• Режим эмуляции хостом шины микроконтроллера (MCU Host Bus Emulation Mode). Этот новый режим комбинирует каналы A и B для создания стандартной шины микроконтроллера 8048 / 8051. Это позволит напрямую подключить к плате FT2232D-Breakout периферийные устройства для этих семейств микроконтроллеров, и производить ввод /вывод данных через USB с помощью технологии MPSSE.

• Новый режим для оптоизолированного быстрого последовательного интерфейса (Fast Opto-Isolated Serial Interface Mode). Новый проприетарный протокол FTDI разработан для гальванически развязанных устройств, и позволяет синхронно обмениваться данными всего по 4 проводам (два двойных оптоизолятора). Узлы периферии управляют скоростью передачи данных в обоих направлениях, с полным сохранением целостности данных. При этом можно достичь максимально допустимой скорости для USB (для FT2232D это 12 мегабит/сек). Если это необходимо, оба канала A и B могут работать через один и тот же 4-проводный интерфейс.

• Режим интерфейса и строки дескрипторов USB могут быть измерены и сохранены в энергонезависимой памяти EEPROM, имеющейся на плате. Память EEPROM конфигурируется через USB с помощью GUI-утилиты FTDI FT_Prog или программно через драйвер D2XX [2, 7].

• Поддерживаются события возобновления и приостановки работы (Suspend и Resume) устройства на шине USB, с передачей соответствующих логических сигналов через PWREN# и SI/WUx. Сигнал PWREN# подается на ключевой p-канальный транзистор MOSFET, который может управлять подачей питания на внешние схемы. Сохранена также возможность отключения сигналов FIFO и UART (как в микросхемах серии BM), конфигурируемая через внешнее EEPROM. В этом режиме плата может аккуратно отключать выходы, когда выключается питание (сигнал PWREN# находится в высоком лог. уровне).

• Плата поддерживает режимы питания как от USB (bus powered USB), так и режимы с самостоятельным внешним источником питания (self powered).

• Имеется встроенная система сброса, с выводом входных и выходных сигналов сброса на внешние контакты.

• Каждый канал A и B может иметь различные логические уровни (5V и 3.3V), устанавливаемые независимо по каждому каналу.

• Поддерживаются блочные или изохронные режимы передачи данных (USB Bulk or Isochronous data transfer). Режим передачи USB Bulk являются хорошим выбором для передачи данных, когда не гарантируется время задержки данных. Для других приложений, у которых важна латентность (время задержки при передачи блока данных), например это аудиоданные или данные видео, может быть выбран режим изохронной передачи USB Isochronous transfer. Этот режим включается битом конфигурации EEPROM.

• Источник внешнего напряжения питания (если используется внешнее питание) может быть в диапазоне от 4.35V до 5.25V.

• Поддерживается совместимость с контроллером хоста UHCI / OHCI / EHCI.

• Поддерживается совместимость с USB 2.0 Full Speed (12 мегабит в секунду).

• Имеется узел сброса при включении питания (Power-On-Reset, POR). Внешний вывод RESET# позволяет внешним схемам сбрасывать чип FT2232D платы. Для многих применений это вход может оставаться неиспользованным, и он может оставаться притянутым к VCC резистором 47 кОм. Есть также выход RSTOUT#, который позволяет узлу POR предоставлять стабильный сигнал сброса для внешнего микроконтроллера или других устройств.

• Отдельно разведенные цепи VCCIOA и VCCIOB позволяют задействовать внутренний преобразователь уровней микросхемы FT2232D. Таким образом каждый канал A и B независимо друг от друга может работать либо с логическими уровнями 3.3V, либо 5V, что исключает необходимость в дополнительных микросхемах преобразования уровней.

• В каждом канале имеется вывод для сигнала Send Immediate (отправить немедленно) / Wake Up (разбудить). На выводе комбинируются сразу две функции. Если USB находится в режиме приостановки (suspend), и режим пробуждения разрешен в конфигурации EEPROM, то импульс логического 0 на этом выводе выдаст запрос на пробуждение (WakeUp) шины USB. Обычно такой сигнал может использоваться для вывода из сна хоста - компьютера PC. Во время обычной работы если на этот вывод подан строб нуля, то любые данные, имеющиеся в буфере RX будут отправлены через USB в следующем запросе Bulk-IN от драйвера, независимо от размера пакета. Эта возможность может использоваться для оптимизации скорости передачи по USB в приложениях, которые передают маленькие пакеты данных хосту PC.

• Программируемый таймаут буфера. Буфер TX USB имеет программируемый таймаут от 1 до 255 мс с шагом 1 мс, что позволяет устройству быть лучше оптимизированным для протоколов, требующих быстрый ответ на короткие пакеты данных.

• Прескалеры-делители для выбора скорости передачи (Baud Rate Pre-Scaler Divisors). В режиме UART прескалер скорости поддерживает деление на (n+0), (n+0.125), (n+0.25), (n+0.375), (n+0.5), (n+0.625), (n+0.75) и (n+0.875), где n целое число от 2 до 16384.

• USB 2.0 (Full Speed). Опция EEPROM позволяет устройству вернуть дескриптор, отвечающий стандарту USB 2.0, в отличие от дескриптора USB 1.1. Внимание: устройство позволяет работать как USB 2.0 Full Speed (12 мегабит/сек), режим USB 2.0 High Speed device (480 мегабит/сек) не поддерживается.

• Выходные сигналы с высокой мощностью (High Output Drive Level Capability). Ножки интерфейса IO могут управлять током 12 mA вместо номинального 4 mA, что позволяет подключить к сигнальной шине больше устройств.

• Интерфейс FIFO, работающий как процессорная шина CPU. В этом режиме FT2232D работает так же, как и классический интерфейс FT245, однако сигналы шины переназначены для упрощения интерфейса с шиной CPU.

• Интерфейс Multi-Protocol Synchronous Serial Engine (MPSSE). Это новая опция, разработанная для организации эффективного интерфейса синхронных последовательных протоколов, таких как JTAG и шина SPI. Опция MPSSE очень гибко настраивается для различных индустриальных стандартов или для проприетарных шинных протоколов. Например, можно подключить один канал FT2232D к FPGA, конфигурируемую через SRAM (так работают многие FPGA фирм Altera и Xilinx). Чип FPGA при включении питания не сконфигурирован (т. е. в него не записаны функции логики). Программа приложения PC может использовать MPSSE для загрузки данных конфигурации в FPGA через USB. Эти данные определят аппаратуру FPGA, и после того как микросхема FPGA будет сконфигурирована, FT2232D может переключиться обратно в режим интерфейса FIFO, чтобы позволить запрограммированной FPGA обмениваться данными с PC через USB. При этом другой канал FT2232D также доступен для работы с другими устройствами.

Достоинство использования такого метода в том, что пользователь платы FT2232D-Breakout может создать универсальное стандартное периферийное устройство USB. Какие функции оно станет выполнять, будет определено программой компьютера PC. Разработка на основе FPGA может быть очень просто обновлена и полностью изменена просто изменением конфигурационного файла данных, без изменения схемы. Практические примеры таких реализаций см. среди модулей разработки FTDI MORPH-IC, DLP-Design DLP-2232PB и DLP-2232SY.

[Цоколевка коннекторов платы FT2232D-Breakout]

№ вывода Мнемоника Тип Описание
P1-1 SI/WUB I Сигнал Send Immediate (отправить немедленно) / Wake Up B (разбудить) для канала B. В режиме 232 UART состояние этого сигнала не определено.
P1-2 BC3 IO TXLED# (232 UART), WR (245 FIFO), WR# (CPU FIFO, MCU 5), RD# 7 (EABBB и SBB).
P1-3 BC2 IO RXLED# (232 UART), RD# (245 FIFO, CPU FIFO, MCU 5), WR# 7 (EABBB и SBB).
P1-4 BC1 IO SLEEP# (232 UART), TXE# (245 FIFO), A0 (CPU FIFO), RD# 8 (EABBB и SBB), ALE (MCU 5).
P1-5 BC0 IO TXDEN (232 UART), RXF# (245 FIFO), CS# (CPU FIFO, MCU 5), WR# 8 (EABBB и SBB).
P1-6 BD7 IO RI# (232 UART), D7 (245 FIFO, CPU FIFO, EABBB и SBB), AD15 (MCU 5).
P1-7 BD6 IO DCD# (232 UART), D6 (245 FIFO, CPU FIFO, EABBB и SBB), AD14 (MCU 5).
P1-8 BD5 IO DSR# (232 UART), D5 (245 FIFO, CPU FIFO, EABBB и SBB), AD13 (MCU 5).
P1-9 BD4 IO DTR# (232 UART), D4 (245 FIFO, CPU FIFO, EABBB и SBB), AD12 (MCU 5), см также примечание 3.
P1-10 BD3 IO CTS# (232 UART), D3 (245 FIFO, CPU FIFO, EABBB и SBB), AD11 (MCU 5), FSCTS (FO).
P1-11 BD2 IO RTS# (232 UART), D2 (245 FIFO, CPU FIFO, EABBB и SBB), AD10 (MCU 5), FSDO (FO).
P1-12 BD1 IO RXD (232 UART), D1 (245 FIFO, CPU FIFO, EABBB и SBB), AD9 (MCU 5), FSCLK (FO).
P1-13 BD0 IO TXD (232 UART), D0 (245 FIFO, CPU FIFO, EABBB и SBB), AD8 (MCU 5), FSDI (FO).
P1-14 GND    
P1-15 GND    
P1-16 VCCSW PWR Выход ключа питания, полевого транзистора MOSFET, который открывается после прохождения энумерации USB-устройства в операционной системе хоста - компьютера.
P1-17 VCCIOB PWR Отдельное напряжение питание для выводов интерфейса UART/FIFO канала B. Сюда может быть подано питание от +3V до +5.25V. Если Вы подключаете сигналы к внешней логике с уровнями 3.3V, то подайте на этот вывод напряжение +3.3V. Если же вы работаете с TTL или CMOS-логикой, у которой уровни сигналов 5V, то подайте на этот вывод напряжение +5V.
P1-18 VCCIOA PWR Отдельное напряжение питание для выводов интерфейса UART/FIFO канала A. Сюда может быть подано питание от +3V до +5.25V. Если Вы подключаете сигналы к внешней логике с уровнями 3.3V, то подайте на этот вывод напряжение +3.3V. Если же вы работаете с TTL или CMOS-логикой, у которой уровни сигналов 5V, то подайте на этот вывод напряжение +5V.
P1-19 EXTVCC PWR Внешнее питание с уровнем напряжения от +4.35V до +5.25V для питания ядра FT2232D, LDO (Low Drop Out - стабилизатор с низким падением напряжения) и для выводов интерфейса, не связанных с контроллером UART/FIFO. Также это напряжение может использоваться для питания аналоговых узлов внутреннего умножителя тактовой частоты на 8.
P1-20 PORTVCC PWR Питание от порта USB (прошедшее через изолирующий DC-DC преобразователь). Соедините этот вывод с выводом EXTVCC, если плата должна питаться от порта USB (это обычный вариант использования). Если устройство USB сконфигурировано на высокий уровень потребления мощности, то максимальный ток потребления может доходить до 450 mA (в зависимости от примененного DC-DC конвертера), иначе ток потребления не может быть больше 90 mA.
P2-1 AD0 IO TXD (232 UART), D0 (245 FIFO, CPU FIFO, EABBB и SBB), TCK/SK (MPSSE 4), AD0 (MCU 5). См. также примечание 3.
P2-2 AD1 IO RXD (232 UART), D1 (245 FIFO, CPU FIFO, EABBB и SBB), TDI/DU (MPSSE 4), AD1 (MCU 5).
P2-3 AD2 IO RTS# (232 UART), D2 (245 FIFO, CPU FIFO, EABBB и SBB), TDO/D1 (MPSSE 4), AD2 (MCU 5).
P2-4 AD3 IO CTS# (232 UART), D3 (245 FIFO, CPU FIFO, EABBB и SBB), TMS/CS (MPSSE 4), AD3 (MCU 5).
P2-5 AD4 IO DTR# (232 UART), D4 (245 FIFO, CPU FIFO, EABBB и SBB), GPIOL0 (MPSSE 4), AD4 (MCU 5).
P2-6 AD5 IO DSR# (232 UART), D5 (245 FIFO, CPU FIFO, EABBB и SBB), GPIOL1 (MPSSE 4), AD5 (MCU 5).
P2-7 AD6 IO DCD# (232 UART), D6 (245 FIFO, CPU FIFO, EABBB и SBB), GPIOL2 (MPSSE 4), AD6 (MCU 5).
P2-8 AD7 IO RI# (232 UART), D7 (245 FIFO, CPU FIFO, EABBB и SBB), GPIOL3 (MPSSE 4), AD7 (MCU 5).
P2-9 AC0 IO TXDEN (232 UART), RXF# (245 FIFO), CS# (CPU FIFO), WR# 6 (EABBB и SBB), GPIOH0 (MPSSE 4), I/O0 (MCU 5).
P2-10 AC1 IO SLEEP# (232 UART), TXE# (245 FIFO), A0 (CPU FIFO), RD# 6 (EABBB и SBB), GPIOH1 (MPSSE 4), I/O1 (MCU 5).
P2-11 AC2 IO RXLED# (232 UART), RD# (245 FIFO, CPU FIFO), WR# 7 (EABBB и SBB), GPIOH2 (MPSSE 4), IORDY# (MCU 5).
P2-12 AC3 IO TXLED# (232 UART), WR (245 FIFO), WR# (CPU FIFO), RD# 7 (EABBB и SBB), GPIOH3 (MPSSE 4), OSC (MCU5).
P2-13 SI/WUA I Сигнал Send Immediate (отправить немедленно) / Wake Up A (разбудить) для канала A. В режиме 232 UART состояние этого сигнала не определено.
P2-14 RSTIN# I Поданный на этот вход внешний импульс лог. 0 может сбросить FT2232D. Если при этом плата подключена по USB к компьютеру, то она заново будет определена в системе. Если этот сигнал не нужен, то он может оставаться неподключенным.
P2-15 RSTOUT# O Выход внутреннего генератора сброса. Остается в высокоимпедансном состоянии около 5 мс после того, как VCC станет > 3.5V и запустится внутренний тактовый генератор, затем переходит в выходной уровень 3.3V с питанием от внутреннего регулятора напряжения. При подаче на вход RSTIN# лог. 0 на выходе RSTOUT# также появляется 0. Сброс по шине USB (USB Bus Reset) не влияет на состояние выхода RSTOUT#
P2-16 GND    
P2-17 GND    
P2-18 GND    
P2-19 GND    
P2-20 EXTVCC PWR Внешнее питание с уровнем напряжения от +4.35V до +5.25V для питания ядра FT2232D, LDO (Low Drop Out - стабилизатор с низким падением напряжения) и для выводов интерфейса, не связанных с контроллером UART/FIFO. Также это напряжение может использоваться для питания аналоговых узлов внутреннего умножителя тактовой частоты на 8.

Примечания к таблице:

Символ # в конце именования сигнала (мнемоники) означает логическую инверсию, т. е. активный уровень сигнала 0. Тип I означает вход, O выход, IO вход/выход (в зависимости от режима), PWR питание. Для GND в целях упрощения таблицы описание не предусмотрено, это общий провод всех логических сигналов и питания (минус).

232 UART - 232 UART Mode, режим работы в качестве TTL-канала RS232, традиционно имеющийся в микросхемах серии FT232.

245 FIFO - 245 FIFO Mode, режим работы в качестве TTL-канала RS245, традиционно имеющийся в микросхемах серии FT245.

CPU FIFO - CPU FIFO Interface Mode, режим эмуляции процессорной шины CPU.

EABB - Enhanced Asynchronous Bit-Bang Mode.

SBB - Synchronous Bit-Bang Mode.

MPSSE - Multi-Protocol Synchronous Serial Engine.

MCU - MCU Host Emulation Mode, режим эмуляции хостом микроконтроллера.

FO - Fast Opto-Isolated Serial Mode.

2 - режимы 232 UART, 245 FIFO, CPU FIFO и FO разрешаются к использованию с помощью программирования EEPROM. Режимы EABB, SBB, MPSSE и MCU включаются командами драйвера.

3 - канал A может быть сконфигурирован в другом режиме IO, если канал B работает в режиме FO. Если оба канала и A, и B работают в режиме FO, то все IO будут на канале B.

4 - MPSSE работает только на канале A.

5 - режим MCU требует задействования обоих каналов сразу, и A, и B.

6 - в режимах Bit-Bang (EABB и SBB) стробы WR# и RD# работают на этих выводах, когда режим основного канала 245 FIFO, CPU FIFO или FO.

7 - в режимах Bit-Bang (EABB и SBB) стробы WR# и RD# работают на этих выводах, когда режим основного канала 232 UART.

8 - в режимах Bit-Bang (EABB и SBB) стробы WR# и RD# работают на этих выводах, когда режим основного канала 245 FIFO, CPU FIFO. На канале B не работают режимы Bit-Bang, когда разрешен режим FO.

[Драйверы и программное обеспечение для FT2232D-Breakout]

Для работы платы в режиме VCP (Virtual COM Port, виртуальный последовательный порт) на компьютере нужно установить драйвер VCP [3, 7]. Большинство имеющегося программного обеспечения, работающего с традиционными COM-портами через Windows VCOMMAPI, для использования VCP требуют всего лишь изменить номер используемого COM-порта на тот, который создан драйвером VCP. Драйверы VCP в настоящее время доступны для систем Windows (x86 32 bit, x64 64 bit), Windows CE, Linux, Mac OS X.

Для работы в режиме Bit Bang (чтение/запись состояния отдельных выводов платы) на компьютере нужно установить драйвер D2XX [4, 7]. С драйвером D2XX можно работать через программный интерфейс Windows DLL. Драйверы D2XX доступны для систем Windows (x86 32 bit, x64 64 bit), Windows CE, Linux, Mac OS X, Android.

Все программное обеспечение [5] и примеры кода работы с чипом FT2232D [6] можно скачать на сайте ftdichip.com, а также из пакета архива [7].

Утилита для игнорирования аппаратного серийного номера (Windows)

Эта бесплатная утилита (IgnoreSerialNo.exe) с помощью модификации реестра Windows позволяет добиться такой работы FT2232D-Breakout, что при подключении любой платы к любому USB-порту компьютера будут образованы виртуальные COM-порты всегда с одними и теми же номерами. После запуска утилиты введите VID/PID платы, у которой должен игнорироваться аппаратный серийный номер, и нажмите кнопку WRITE. Чтобы удалить игнорирование серийного номера для платы с таким VID/PID, нажмите кнопку ERASE. Внимание: это должно быть проделано до первого подключения платы к компьютеру (до первой инсталляции устройства USB). Дополнительную информацию по установке игнорирования аппаратного серийного номера см. в апноуте AN_107 Advanced Driver Options.

Утилита для назначения номера COM-порта

Эта бесплатная утилита (COMPort_Assignment Utility, ReAssignCOMPortNumb.exe) может использоваться для назначения номеров COM-портов для устройств на чипах FTDI. Она работает под Windows XP, Vista и Windows 7. Подробную информацию можно получить из апноута AN_160 COMPort_Assignment Utility User Guide.

CDM Uninstaller 1.4 - деинсталлятор драйвера устройства USB

CDM Uninstaller (Windows Device Driver Uninstaller) является бесплатной утилитой, которая может селективно удалить драйвера USB-устройства Windows по указанному Vendor ID (VID) и Product ID (PID). Эта программа поставляется в двух видах - как утилита командной строки, и как исполняемый файл с GUI-интерфейсом.

FT_PROG 2.8.2.0 - утилита программирования EEPROM

Назначение этой утилиты понятно из названия (EEPROM Programming Utility). Она используется для модификации содержимого памяти EEPROM (в нашем случае это U3 93LC46B, см. принципиальную схему платы FT2232D-Breakout), в которой микросхема FTDI (в нашем случае это U4 FT2232D) сохраняет информацию о текущей конфигурации. Именно в EEPROM сохраняется информация, из которой составляются дескрипторы USB-устройства и от которой зависит режим работы платы после подачи питания. FT_PROG является расширенной версией ранее предоставленных утилит MProg и VProg, и может их полностью заменить. Руководство пользователя см. в апноуте AN_124
User Guide For FTDI FT_Prog Utility.

Внимание: FT_PROG для своего запуска требует установленной подсистемы Microsoft .NET Framework 4.0, которая может быть получена с сайта Microsoft. Для установки .NET Framework запустите файл dotnetfx.exe и следуйте инструкциям.

Microsoft USBView - USB Connection Viewer

USBView бесплатная утилита от Microsoft, которая показывает дерево соединения USB и подключенные устройства USB с их конфигурационными данными. Эта программа очень полезна при определении ошибок энумерации устройств USB. USBView работает на операционных системах Windows 98, ME, 2000 и XP. Имеется также версия USBView для Linux.

FT2232_UART - Manufacturing Test Utility для устройств FT2232

FT2232_UART предназначена для использовании в заводском тестировании устройств, основанных на микросхемах FT2232D/H. Программа имеет простейший интерфейс пользователя с единственной кнопкой, и возвращает результат типа "работает / не работает" для разработок, использующих преобразователь USB <-> RS232. Для корректного прохождения теста нужен специальный кабель для соединения входов и выходов RS232. Значения VID/PID по умолчанию для FT2232H/D жестко вшиты в исполняемый файл на этапе компиляции (VID 0x0403, PID 0x6010). Исходный код этой программы доступен для свободного скачивания и использования на сайте FTDI на странице C# Builder examples [6, 7], исходный код может так же скомпилирован под VC# 2008. Документацию по использованию см. в апноуте AN_127 User Guide For FT2232H/D Factory Test Utility.

[Питание от коннектора USB]

Питание платы конфигурируется с помощью контактов 17..20 коннектора P1. Для того, чтобы питание поступало от USB, соедините друг с другом эти контакты перемычками:

FT2232D Breakout v02 USB power

[Ссылки]

1. DLP-2232M-G USB Adapter site:dlpdesign.com.
2. FT2232D - Dual USB UART/FIFO IC site:ftdichip.com.
3. Virtual COM Port Drivers site:ftdichip.com.
4. D2XX Direct Drivers site:ftdichip.com.
5. Utilities site:ftdichip.com.
6. Code Examples site:ftdichip.com.
7. 130505FT2232D-Breakout-pack.zip - апноуты, документация, драйверы D2XX и VCP, примеры программ, работающих с платой, сервисное программное обеспечение - все для работы с платой FT2232D-Breakout.