Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Агуров П.В. -> "Интерфейсы USB. Практика использования и программирования" -> 140

Интерфейсы USB. Практика использования и программирования - Агуров П.В.

Агуров П.В. Интерфейсы USB. Практика использования и программирования — СПб.: БХВ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interface2004.djvu
Предыдущая << 1 .. 134 135 136 137 138 139 < 140 > 141 142 143 144 145 146 .. 166 >> Следующая

Напряжение питания микросхемы FT232BM (VCC) — 4,4...5,25 В, потребляемый ток — не более 50 мА в рабочем и 250 мкА в спящем режиме. Если микросхему питают напряжением, поступающим по USB, ее вывод 14 (PWRCTL) необходимо соединить с общим проводом (GND), если устройство имеет собственный источник питания — с цепью VCC Логические выходы микросхемы рассчитаны на ток до 4 мА (вытекающий) и до 8 мА (втекающий).
15.2. Схемотехника FT232BM
Документ FT232BM Designers Guide, доступный на сайте компании FTDI, содержит несколько примеров использования этих микросхем. Мы приведем только две из них. Первая схема (рис. 15.3) показывает подключение FT232BM с питанием от USB-шины и выходом на 5-вольтовый приемопередатчик (логика или микропроцессор).
На рис. 15.4 показана схема подключения FT232BM с внешним питанием.
15.3. Функции D2XX
Драйверы виртуального последовательного порта (см. разд. 12.3.6) позволяют работать с USB-интерфейсом через обычные функции СОМ-портов. Существует и альтернативное решение. Динамическая библиотека FTD2XX.dll (см. разд. 12.3.6) предоставляет набор функций для прямого взаимодействия с микросхемами FTDI (листинг 15.1).
USB
CN1 CN-USB
FB1
—о VCC
Ферритовая бусина :С5 1OnF
Л
J- С4 ' 33 nF
R3 470R
-1- С6 "4OM uF
-Bi.
ZtB-
27R
RB 1к5 ¦™—VW-
Y1
6MHz Resonator
г-
Фильтрующие конденсаторы
P
rz 2к2
о ООО 3V30UT р jjo^j TXD
5 § RXD
USBDM USBDP
R STOUT* XTIN
RTS*k
XTOUT <J RESET*
DTRflt21-DSR»!22-
FWRENS
TXLED# h12-
EESK EEDATA
SLEEP* K
Z QQ W ZZ « OO
2J-
1
SLEEP*
1 C7 п
VCC-5v
TXD
RXD
RTS*
CTS*
5v микропроцессор или логика
POWERDN* (Power Down)
RESET*
GND
U2
CS VCC SK NC
DIN NC DOUT GND
93C46/56/66 (не обязательно)
R1 -WV-
R7 47k
15.3. Схема включения FT232 с питанием от шины
USB
CN1 CN-USB
та
R6
R6> 15k>
Фильтрующие конденсаторы 9 VCC
- C3 ^ 4IOuF
С2 0 1 uF
г
FW 27R —WV-
R3 ¦¦47DR
J_ С4 -і- С6
Y1
6MHz Resonator
J- С1
¦ 0.1 uF
R2 2к2
P
3V30UT и TXD
^ ^ RXD
USBDM USBDP
RSTO UT# XTIN
XTOUT RESET*
EESK EEDATA
CTS*1-
DT R# fil— DSR»!22-DCMIh1U-R#,h^_
TXDEN -12-
PWREN* Д5--L4_
PWRCTL -TXLED* 42-RXLED*^
SLEEP* t
Z QQ M ZZ « OO
2a-
rx:
SLEEP#
U2
CS VCC
SK NC
DIN NC
DOUT GND
93C46756/66 (не обязательно)
R1
Рис. 15.4. Схема включения FT232 с внешним питанием
VCC 9
VCC-5»
TXD RXD RTS# CTS#
5v микропроцессор или логика
POWERDN* (PowerDown)
GND
] I GND
Внешнее питание 5v
Глава 15. Использование микросхем FTDI
463
// Открыть устройство
function FT_Open(PVDevice:Integer; ftHandle: Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_0pen';
Il Закрыть устройство
function FT_Close(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Close';
Il Чтение блока данных
function FT_Read(ftHandle:Dword; FTInBuf : Pointer; BufferSize : Longlnt; ResultPtr : Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Read';
Il Передача блока данных
function FT_Write(ftHandle:Dword; FTOutBuf : Pointer; BufferSize : Longlnt; ResultPtr : Pointer ) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Write';
Il Установка скорости обмена
function FT_SetBaudRate(ftHandle:Dword;BaudRate:DWord) : FT_Result ; stdcall ; External FT DLL Name name 'FT SetBaudRate';
Il Установка характеристик линии обмена (длина байта, число стоп-бит Il и четность)
FT_SetDataCharacteristics(ftHandle:Dword;WordLength,StopBits,Parity:Byte) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_SetDataCharacteristics';
// Управление линией Xon/Xoff
function
FT_SetFlowControl(ftHandle:Dword;FlowControl: Word;XonChar,XoffChar: Byte) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_SetFlowControl';
Il Сброс устройства
function FT_ResetDevice(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_ResetDevice';
Il Установка DTR в 1
function FT_SetDtr(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_SetDtr';
Il Установка DTR в О
function FT_ClrDtr(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_ClrDtr';
Il Установка RTS в 1
function FT_SetRts(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_SetRts';
Il Установка RTS в О
function FT_ClrRts(ftHandle:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name •FT ClrRts';
function
464
Часть IV. Создание USB-устройств
Il Получение состояния линий модема
function FT_GetModemStatus(ftHandle:Dword;ModemStatus:Pointer) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_GetModemStatus';
function
Il Установка специальных символов
FT_SetChars(ftHandle:Dword;EventChar,EventCharEnabled,ErrorChar,ErrorChar Enabled : Byte) : FT_Result ; stdcall ; External FT_DLL_Name name 'FTjSetChars';
Il Очистка буферов
function FT_Purge(ftHandle:Dword;Mask:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_Purge';
Il Установка тайм-аутов
function FT_SetTimeouts(ftHandle:Dword;ReadTimeout,WriteTimeout:Dword) : FT_Result ; stdcall ; External FT_DLL_Name name 'FT_SetTimeouts';
Предыдущая << 1 .. 134 135 136 137 138 139 < 140 > 141 142 143 144 145 146 .. 166 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100