Digitrode
цифровая электроника вычислительная техника встраиваемые системы
FT230X: функция обнаружения зарядного устройства
Многие знают микросхему FT232RL, ее применяют в качестве моста USB-UART. Но у нее имеется младшая сестра FT230X, которая не только дешевле, но и имеет интересную функцию обнаружения USB-зарядного устройства. И один заинтересовавшийся ею товарищ под ником Baoshi провел исследования в этой области, поскольку хотел, чтобы его новое устройство питалось от USB и/или от аккумулятора.
Проектирование устройства с питанием от USB не тривиальная задача, потому что:
1. Если устройство нуждается в более 100 мА тока, оно сможет получить этот ток только после запроса хоста во время инициализации USB. Некоторые USB-хосты в состоянии обеспечить максимум 100 мА. Поэтому устройство должно быть достаточно умно для того, чтобы уметь определять тип хоста.
2. Следует учитывать ограничение тока в спящем режиме.
3. Если хочется, чтобы устройство работало автономно без ПК, то оно должно быть способно получать питание от «тупых» хостов, таких как USB-зарядники.
Положение 3 конфликтует с положениями 1 и 2, потому что USB-зарядник не может быть проинициализирован и не предусматривает спящего режима. Вот почему функция определения USB-ЗУ в микросхеме FT230XS так интересна. Но необходимы испытания…
Согласно документации FT230XS поддерживает обнаружение зарядника, соответствующего спецификации USB BC1.2. Но многие USB-зарядники (и в частности зарядники Apple) не совместимы с BC1.2. И в документации не сказано, сможет ли FT230XS обнаружить их.
Кратко об USB-питании и USB-зарядке. Изначальная спецификация USB ограничивает отдачу тока на уровне 500 мА. Однако 500 мА недостаточно, чтобы зарядить такие устройства как, например, смартфоны. Поэтому позднее была представлена спецификация BC1.2 с положениями Charging Downstream Port (CDP) и Decicated Charging Port (DCP). В DCP подразумевается закорачивание D+ и D- между собой. В случае с DCP устройство может получать от порта 1.8 А. Работа с CDP будет посложнее и не входит в данную статью, но особо интересующиеся могут посмотреть здесь (англ.).
На бумаге все выглядит легко, но на деле не все так просто. Дело в том, что спецификация для USB-зарядки была выпущена слишком поздно, и производители изобрели свои собственные протоколы зарядки, а именно:
2. Китайский стандарт YD/T 1591-2006. Он похож на BC 1.2, там также перекорачиваются D+ и D-.
3. Европейские стандарты зарядки смартфонов говорят, что для определения ЗУ между D+ и D- должен быть подключен резистор 200 Ом.
FT230XS довольно проста в использовании. Baoshi сделал плату для тестирования (на изображении ниже). Контактор был взят из USB-разъема и приклеен к плате. Тестируемая микросхема FT230XS, Rev D, код 1243.
Также были подключены 3 светодиода к выводам CBUS. Цветовая конфигурация следующая:
— Желтый – BCD#, должен загораться, когда ЗУ обнаружено
— Красный – PWEN#, указывает, что необходимая мощность установлена
— Зеленый – SLEEP#, должен загораться при переходе USB в спящий режим.
Чип программируется с помощью официальной утилиты FT_Prog. Требуемая мощность установлена на 500 мА. И результаты получились следующими.
Тестирование с USB портом ПК
Сценарий 1. Подключаем к USB-порту работающего компьютера. Загорается зеленый светодиод (SLEEP#), затем все диоды находятся в отключенном состоянии. Windows начинает искать драйвер. Когда Windows начинает скачивать драйвер через Windows Update, загорается красный светодиод (PWEN#). Он продолжает гореть после установки драйвера.
Сценарий 2. При подключенной FT230XS переводим Windows в режим сна: красный светодиод (PWEN#) отключается, а зеленый (SLEEP#) загорается
Сценарий 3. Перезагружаем Windows: зеленый гаснет, красный загорается, что подтверждает активацию источника питания
Сценарий 4. Отключаем FT230XS, переводим Windows в режим сна, и вновь подключаем FT230XS: красный выключается, зеленый загорается, что указывает на нахождение в режиме сна
Сценарий 5. FT230XS остается подключенной, выключаем ПК: зеленый светодиод продолжает гореть, сообщая о нахождении в режиме сна
Сценарий 6. Отсоединяем FT230XS, выключаем ПК, подключаем FT230XS обратно: зеленый светодиод горит, значит имеем режим сна
Тестирование с USB ПК через USB-хаб с автономным питанием
То же что и в предыдущем случае.
Тестирование с USB ПК через USB-хаб с питанием от шины
Сценарий 1. Соединяем с хабом: зеленый горит, все остальные отключены, Windows показывает нижеследующее сообщение. Все светодиоды выключены. Это показывает, что Windows не удалось настроить устройство, так как порт USB не может обеспечить достаточный ток (500 мА).
Сценарий 2. При подключенной FT230XS переводим Windows в режим сна: зеленый светодиод загорается, что и доказывает нахождение в режиме сна
Сценарий 3. Перезагружаем Windows: все светодиоды выключены.
Сценарий 4. Отсоединяем FT230XS, переводим Windows в режим сна, вновь подсоединяем FT230XS: зеленый светодиод горит, значит спящий режим
Сценарий 5. При подключенной FT230XS, выключаем ПК: зеленый светодиод горит, значит спящий режим
Сценарий 6. Отсоединяем FT230XS, выключаем ПК, подключаем FT230XS обратно: зеленый светодиод горит, значит спящий режим
Тестирование с USB-зарядником
На нижеприведенном рисунке показаны 4 зарядника, над которыми проводились опыты.
Сценарий A. Подсоединяем FT230XS к USB-адаптеру питания от маршрутизатора TPLink (D+/D- закорочены). Загорается желтый светодиод (BCD#), значит, что зарядное устройство обнаружено.
Сценарий B. Подсоединяем FT230XS к USB-адаптеру питания от Amazon Kindle (D+/D- закорочены). Загорается желтый светодиод (BCD#), зарядное устройство обнаружено.
Сценарий C. Подсоединяем FT230XS к ЗУ от Apple iPhone (5В/1А). Загорается желтый светодиод (BCD#), зарядное устройство обнаружено.
Сценарий D. Подсоединяем FT230XS к ЗУ от Apple iPad (5В/2А). Загорается зеленый светодиод (SLEEP#), что говорит о режиме сна.
Сценарий E. Для симуляции подключения микросхемы к заряднику от Apple iPod на FT230XS было подано 5 В питания и 2 В на линии D+/D- через делитель напряжения. Загорается зеленый светодиод (SLEEP#), режим сна.
Сценарий F. Соединяем FT230XS с питанием 5 В (D+, D- висят). Загорается зеленый светодиод (SLEEP#), режим сна.
Результаты экспериментов объединены в одной таблице:
В итоге можно сказать, что для включения питания устройства можно было бы использовать PWEN или BCD, а для перехода в режим сна SLEEP. Однако такая логика работы не применима для зарядников iPad, iPod и для «тупого» USB-порта, потому что FT230XS не в состоянии отличить их от USB-хаба с питанием от шины.
Установка драйвера FTDI на Windows 10
Общие сведения:
Внимание! Для установки драйверов необходимы права администатора. Зайдите от имени пользователя с правами администратора или попросите администатора компьютера дать повышенные права аккаунту, от имени которого будет производиться установка драйвера.
Шаг 1. Подключение устройства.
Подключите устройство с USB-UART перобразователем к персональному компьютеру. Если компьютер не подключён к сети интернет или на нём не работает Windows Update, то драйвера для USB-UART преобразователя придётся установить вручную.
Шаг 2. Диспетчер устройств.
Нажмите правой клавишей мыши на кнопку с логотипом Windows в левом нижнем углу и нажмите на пункт «Диспетчер устройств» в открывшемся меню.
Шаг 3. Скачивание драйвера.
Кликните по ссылке ftdichip.com и проскрольте вниз до таблицы. В ней кликнете на «setup executable» как на рисунке. Начнётся скачивание драйвера. Или скачайте драйвер с нашего сайта, в случае, если сайт производителя по каким-либо причинам не работает.
После того как файл скачался, нажмите на иконку «Показать в папке» в окне загрузок.
Откроется окно Windows Explorer. Нажмите на только что скачанный файл правой клавишей мыши и выбирите пункт «Извлечь все. » из меню.
Во вновь открывшемся окне нажмите «Извлечь«. Убедитесь, что стоит галочка слева от фразы «Показать извлечённые файлы».
Шаг 4. Установка драйвера.
После извлечения файлов установщика откроется окно с исполняемым файлом. Запустите его двойным щелчком мыши.
Во вновь открывшемся окне нажмите на кнопку «Да».
Откроется окно распаковщика. Нажмите «Extract».
После распаковки установочных файлов автоматически запустится Мастер установки. Нажмите «Далее >»
Внимательно прочитайте лицензионное соглашение и кликните на фразу «Я принимаю это соглашение», если Вы с ним согласны.
Начнётся процесс установки.
После завершения установки нажмите «Готово».
Шаг 5. Проверка.
После установки драйвера откройте Arduino IDE и убедитесь, что появился новый виртуальный COM-порт.
Developer Help
The FT230X provides a convenient USB-UART interface for the SecureIoT1702 Development Board which can be used to create an interface between the CEC1702 and a host device (e.g. a PC serial terminal application).
USB Driver Installation
Virtual Com Port drivers for the FT230X are available from FTDI.
Identifying and Connecting to the FT230X
Once the USB drivers are properly installed, a new serial port object should become available for application use. Under Windows, the serial port should become visible from the Windows Device Manager, in the “Ports (COM & LPT)” category and should be assigned a new COMx name (where x is a number, ex: «COM2»). The exact COMx number assigned to the hardware will depend in part upon how many COMx based hardware devices have previously been connected to the machine, as each new hardware instance must be assigned a new and unique number, to avoid potential conflicts (e.g., two simultaneously attached hardware devices are not allowed to share the same COMx number).
If a machine currently has more than one COMx based hardware device attached to the machine, multiple COMx entries (but different numbers, e.g., COM1 and COM2) may exist in the Windows Device Manager «Ports (COM & LPT)» category and it may not be clear which COMx port number is specifically associated with the FT230X device. If this occurs, the COMx number can be manually identified by temporarily detaching the USB connection to the FT230X while watching the Windows Device Manager, to identify which device entry disappears (and subsequently re-appears in the list, upon re-attaching the FT230X).
Once the COMx port number assigned to the FT230X is known, any conventional serial port terminal program can be used to open/close/read/write to the COMx port. Upon opening the COMx port and writing characters to it, the FT230X will forward the characters out of the hardware UART TX pin (which would normally be connected to the PIM microcontroller via jumper J37). Similarly, characters originating from the Explorer 16/32 Development Board (or attached accessories) will be transmitted to the host terminal program, when J38 is capped. Although any standard third party serial terminal program can be used, Microchip provides an example USB serial terminal program called «ComXDBG» which implements the UART Bootloader firmware-programming feature.
Developer Help
The FT230X provides a convenient USB-UART interface for the SecureIoT1702 Development Board which can be used to create an interface between the CEC1702 and a host device (e.g. a PC serial terminal application).
USB Driver Installation
Virtual Com Port drivers for the FT230X are available from FTDI.
Identifying and Connecting to the FT230X
Once the USB drivers are properly installed, a new serial port object should become available for application use. Under Windows, the serial port should become visible from the Windows Device Manager, in the “Ports (COM & LPT)” category and should be assigned a new COMx name (where x is a number, ex: «COM2»). The exact COMx number assigned to the hardware will depend in part upon how many COMx based hardware devices have previously been connected to the machine, as each new hardware instance must be assigned a new and unique number, to avoid potential conflicts (e.g., two simultaneously attached hardware devices are not allowed to share the same COMx number).
If a machine currently has more than one COMx based hardware device attached to the machine, multiple COMx entries (but different numbers, e.g., COM1 and COM2) may exist in the Windows Device Manager «Ports (COM & LPT)» category and it may not be clear which COMx port number is specifically associated with the FT230X device. If this occurs, the COMx number can be manually identified by temporarily detaching the USB connection to the FT230X while watching the Windows Device Manager, to identify which device entry disappears (and subsequently re-appears in the list, upon re-attaching the FT230X).
Once the COMx port number assigned to the FT230X is known, any conventional serial port terminal program can be used to open/close/read/write to the COMx port. Upon opening the COMx port and writing characters to it, the FT230X will forward the characters out of the hardware UART TX pin (which would normally be connected to the PIM microcontroller via jumper J37). Similarly, characters originating from the Explorer 16/32 Development Board (or attached accessories) will be transmitted to the host terminal program, when J38 is capped. Although any standard third party serial terminal program can be used, Microchip provides an example USB serial terminal program called «ComXDBG» which implements the UART Bootloader firmware-programming feature.
























