Конфигурируем FT4232H c помощью утилиты ftdi_eeprom

FT4232H – это интегральная микросхема преобразователя USB – UART, поддерживающая режим High Speed на стороне USB и имеющая четыре порта на стороне UART.

Подключив к этой микросхеме EEPROM-память можно задать специфические режимы работы или изменить данные производителя.

Разберемся на примере и сконфигурируем FT4232H непосредственно в системе под управлением GNU/Linux. Делать это будем с помощью утилиты ftdi_eeprom.

Установка ftdi_eeprom

Утилита ftdi_eeprom входит в состав open-source библиотеки libFTDI и зависит от libconfuse.

  • Для установки ftdi_eeprom в Ubuntu или Debian, введите в окне терминала команды:

    sudo apt-get update sudo apt-get install ftdi-eeprom

  • Если готовите собственный дистрибутив с помощью Yocto Project (thud), утилиту ftdi_eeprom можно установить, добавив рецепты:

    recipes-support/confuse/confuse_2.7.bb

    DESCRIPTION = "Library for parsing configuration files." HOMEPAGE = "http://www.nongnu.org/confuse/" SECTION = "libs" LICENSE = "ISC" LIC_FILES_CHKSUM = "file://NEWS;md5=18e885b42b86362019e0cab8dc2a393b"  SRC_URI = "http://download.savannah.gnu.org/releases/confuse/confuse-${PV}.tar.gz" SRC_URI[md5sum] = "45932fdeeccbb9ef4228f1c1a25e9c8f" SRC_URI[sha256sum] = "e32574fd837e950778dac7ade40787dd2259ef8e28acd6ede6847ca895c88778"  inherit autotools binconfig pkgconfig lib_package gettext  EXTRA_OECONF = "--enable-shared"  BBCLASSEXTEND = "native"

    recipes-support/libftdi/libftdi_%.bbappend

    PACKAGECONFIG += "ftdi-eeprom" PACKAGECONFIG[ftdi-eeprom] = "-DFTDI_EEPROM=on,-DFTDI_EEPROM=off,confuse" PACKAGES =+ "ftdi-eeprom" FILES_ftdi-eeprom += "${bindir}/ftdi_eeprom"

Конфигурируем FT4232H

По умолчанию четыре UART-порта FT4232H работают в режиме RS232, наименование производителя – «FTDI» и название устройства – «Quad RS232-HS».

Изменим наименование производителя на «habr.com», название продукта на «Quad RS485», а UART-порты переведем в режим RS485.

Подготовим конфигурационный файл habr.conf

# Имя файла, содержащий образ EEPROM, который будет создан filename=habr.bin  # Идентификатор производителя. Для FT4232H значение по умолчанию: 0x0403 vendor_id=0x0403  # Идентификатор продукта. Для FT4232H значение по умолчанию: 0x6011 product_id=0x6011  # Тип EEPROM микросхемы. 0x46 для 93xx46, 0x56 для 93xx56 и 0x66 для 93xx66 eeprom_type=0x56  manufacturer="habr.com" product="Quad RS485" serial="1234"  # Разрешить использование серийного номера use_serial=true  # Ограничение по потреблению микросхемы: (значение параметра) * 2 мА. Значение параметра # должно быть равно 0, когда self_powered=true max_power=0  # Микросхема питается не от USB, а от собственного источника питания self_powered=true  # Если на линии RI логический 0 и значение параметра равно true, то хост контроллер USB # выйдет из режима ожидания примерно через 20 мс. remote_wakeup=false  # Задать режим работы порта cha_type=UART chb_type=UART  # Использовать драйвер виртуального com-порта cha_vcp=true chb_vcp=true chc_vcp=true chd_vcp=true  # Разрешить режим RS-485 cha_rs485=true chb_rs485=true chc_rs485=true chd_rs485=true 

С помощью утилиты ftdi_eeprom загрузим нашу конфигурацию в eeprom-память, выполнив в окне терминала команду:

ftdi_eeprom --flash-eeprom habr.conf

После перезагрузки устройства можно наблюдать результаты работы:

FavoriteLoadingДобавить в избранное
Posted in Без рубрики

Добавить комментарий