Понедельник, 25.11.2024, 00:12
Приветствую Вас Гость | RSS Главная | Регистрация | Вход
Mxlt.Ucoz.Ru Web-Portal For Friends !
Поиск

Меню сайта

Форма входа


Категории раздела
Новости [6]
Муз Новости [17]
Музыка [180]
Игры [9]
Фильмы [8]
Юмор [6]
IT Юмор и нетолько.
Программы [278]
Программы(Soft)
Книги [874]
Книги,Журналы,Материалы.

Наш опрос
Оцените мой сайт
Всего ответов: 204

Наши друзья
РадиоКОТ - популярно об электронике. Авторские схемы, новые разработки. Обучение по электронике, микроконтроллерам, ПЛИС. Форум

Слушай Радио Rocks

Статистика

Онлайн всего: 6
Гостей: 6
Пользователей: 0

Главная » 2014 » Май » 23 » Павел Агуров - ИНТЕРФЕЙС USB практика использования и програмирования + CD
15:47
Павел Агуров - ИНТЕРФЕЙС USB практика использования и програмирования + CD

Павел Агуров - ИНТЕРФЕЙС USB практика использования и программирования + CD

Павел Агуров интерфейс USB 2004

 

USB 1.1/2.0, HID-УСТРОИСТВА
НАПИСАНИЕ USB-ДРАЙВЕРОВ
РАБОТА В DOS, WINDOWS 98/ME/NT/2000/XP
ПРИМЕРЫ НА ЯЗЫКЕ PASCAL
ПРИМЕРЫ РЕАЛИЗАЦИИ ДЛЯ ATMEL AT89C5131
РАБОТА С МИКРОСХЕМАМИ FTDI

Одна из лучших книжек по программированию USB, включает в себя описание аппаратного использования USB, так и программную часть. А также как с помощью резисторов (сопротивлений) определяется какое (по скорости) устройство подключено к USB
Для устройств USB 2.0 регламентировано три режима работы:
LOW-SPEED – USB 2.0  (10—1500 Кбит/c) - USB 1.1
FULL-SPEED – USB 2.0  (0,5—12 Мбит/с)
HIG-SPEED – USB 2.0    (25—480 Мбит/с)
USB 2.0 отличается от USB 1.1 введением режима HIG-SPEED.

Одноко есть еще один тонкий момент связан с обозначением
"USB 2.0". Согласно спецификации USB 2.0 пропускная способность этого
интерфейса составляет 480 Мбит/с, однако в спецификации заложена воз-
можность функционирования устройств в режимах FS и HS. Таким образом,
реальную пропускную способность 480 Мбит/с могут обеспечить только
устройства, способные работать в режиме HS.
"Основатели" USB рекомендуют использовать логотип "USВ 2.0" только для
HS-устройств, но многие производители используют его и для
FS-устройств, являющихся, по сути, обычными устройствами USB 1.1. Для из-
бежания путаницы между "USB 2.0" и "Hi-speed USB"

Изложены базовые сведения по интерфейсу USB для ПК: примеры
USB-устройств и советы по их выбору, правила установки и конфигуриро-
вания устройств, методы решения возникающих проблем. Описаны кабели,
разъемы, принципы питания устройств и другое аппаратное обеспечение.
Приведено внутреннее устройство USB и его физическая реализация, обсу-
ждены общие вопросы написания драйверов для операционной системы
Microsoft Windws 2000/XP с примерами на языке Borland Pascal и в среде
Delphi. Рассмотрен процесс создания USB-устройства: от выбора микро-
схем и схемотехники до написания программы микроконтроллера и WDM-
драйвера. В книге содержится большое количество практических советов и
примеров программ. Для удобства читателей все исходные коды приводятся
на прилагаемом компакт-диске.
Для пользователей ПК, разработчиков аппаратуры и программистов

Название книги: ИНТЕРФЕЙС USB практика использования и программирования
Автор: Агуров Павел Владимирович
Год выхода: 2004
Издание: БХВ-Петербург
Кол-во страниц: 576
Формат файла: DjVu
Размер файла: 9.2 мб

Часть I. Введение в USB  
Глава 1. Что такое USB  
1.1. История USB
1.2. Сравнение USB с другими интерфейсами  
1.3. Основные понятия USB  
1.3.1. Общая архитектура шины  
1.3.2. Физическая и логическая архитектура шины  
1.3.3. Составляющие USB  
1.3.4. Свойства USB-устройств  
1.3.5. Свойства хабов  
1.3.6. Свойства хоста  
1.4. Примеры USB-устройств  
1.4.1. Мышь и клавиатура  
1.4.2. Мониторы  
1.4.3. Переходники USB-to-COM и USB-to-LPT  
1.4.4. Сканеры  
1.4.5. Модемы  
1.4.6. Звуковые колонки
1.4.7. Флеш-диски
1.4.8. Хабы
1.4.9. Измерительная техника  
1.4.10. Экзотические устройства  
1.5. Сетевое соединение через USB  
1.5.1. Конвертер USB-Ethernet  
1.5.2. Прямое соединение через USB-порт  
1.6. Передача данных
1.6.1. Принципы передачи данных  
1.6.2. Механизм прерываний  
1.6.3. Интерфейсы хост-адаптера  
1.6.4. Возможность прямого доступа к памяти  
1.6.5. Режимы передачи данных   
1.7. Установка и конфигурирование USB-устройств  
1.7.1. Настройки BIOS для USB  
1.7.2. Устранение проблем  
1.8. Ограничения USB  
1.9. Если вы покупаете компьютер  
1.9.1. HS и USB 2.0 — не одно и то же!  
1.9.2. Системная плата
1.9.3. Корпус  
1.9.4. USB для "старых" моделей компьютеров  
1.10. Интернет-ресурсы к этой главе   
2.1. Кабели и разъемы
2.1.1. Типы кабелей  
2.1.2. Длина кабеля  
2.1.3. Разъемы  
2.2. Физический интерфейс  
2.2.1. Кодирование данных  
2.2.2. Идентификация устройств  
2.3. Питание  
2.3.1. Типы питания USB-устройств  
2.3.2. Управление энергопотреблением  
2.3.3. Вход в режим низкого энергопотребления  
2.4. Интернет-ресурсы к этой главе  
Часть П. Внутренняя организация USB  
Глава 3. Внутренняя организация шины  
3.1. Логические уровни обмена данными  
3.1.1. Уровень клиентского ПО  
3.1.2. Уровень системного драйвера USB  
3.1.3. Уровень хост-контроллера интерфейса  
3.1.4. Уровень шины периферийного устройства  
3.1.5. Уровень логического USB-устройства  
3.1.6. Функциональный уровень USB-устройства  
3.2. Передача данных по уровням  
3.3. Типы передач данных  
3.4. Синхронизация при изохронной передаче  
3.5. Кадры  
3.6. Конечные точки  
3.7. Каналы  
3.8. Пакеты  
3.8.1. Формат пакетов-маркеров IN, OUT, SETUP и PING  
3.8.2. Формат пакета SOF  
3.8.3. Формат пакета данных  
3.8.4. Формат пакета подтверждения  
3.8.5. Формат пакета SPLIT
Содержание
3.9. Контрольная сумма  
3.9.1. Алгоритм вычисления CRC
3.9.2. Программное вычисление CRC  
3.10. Транзакции  
3.10.1. Типы транзакций  
3.10.2. Подтверждение транзакций и управление потоком  
3.10.3. Протоколы транзакций  
Глава 4. Внутренняя организация устройства
4.1. Запросы к USB-устройствам
4.1.1. Конфигурационный пакет  
4.1.2. Стандартные запросы к устройствам  
4.1.3. Дескрипторы устройства  
Глава 5. Внутренняя организация хоста и хабов  
5.1. Хабы
5.1.1. Взаимодействие хост-контроллера с хабом  
5.1.2. Дескриптор хаба
5.1.3. Запросы хабов  
5.1.4. Запрос CLEAR_HUB_FEATURE  
5.1.5. Запрос CLEAR_PORT_FEATURE  
5.1.6. Запрос GET_BUSJSTATE
5.1.7. Запрос GET_HUB_DESCRIPTOR  
5.1.8. Запрос GET_HUB_STATUS
5.1.9. Запрос GETJ>ORT_STATUS  
5.1.10. Запрос SET_HUB_DESCR1PTOR
5.1.11. Запрос SET_HUB_FEATURE  
5.1.12. Запрос SET_PORT_FEATURE.
5.2. Совместная работа устройств с разными скоростями  
Глава 6. USB без ПК
6.1. Разъемы OTG  
6.2. Типы OTG-устройств  
6.3. Дескриптор OTG-устройства  
6.4. Интернет-ресурсы к этой главе  
Часть III. практика программирования
Глава 7. Поддержка USB в Windows  
7.1. Модель WDM  
7.2. Взаимодействие с USB-драйвером  
Глава 8. HID-устройства -
8.1. Свойства HID-устройства  
8.2. Порядок обмена данными с HID-устройстиом
8.3. Установка HID-устройства   
8.4. Идентификация НID-устройства  
8.4.1. Идентификация загрузочных устройств  
8.4.2. Дескриптор конфигурации НID-устройства  
8.4.3. HID-дескриптор
8.4.4. Дескриптор репорта  
8.5. Структура дескриптора репорта
8.5.1. Структура элементов репорта  
8.5.2. Типы элементов репорта  
8.5.3. Примеры дескрипторов  
8.6. Запросы к HID-устройству  
8.6.1. Запрос GET_REPORT.  
8.6.2. Запрос SET_REPORT  
8.6.3. Запрос GETJDLE.  
8.6.4. Запрос SETJDLE  
8.6.5. Запрос GET_PROTOCOL  
8.6.6. Запрос SET_PROTOCOL  
8.7. Инструментальные средства  
8.8. Взаимодействие с HID-драйвером
Глава 9. Введение в WDM  
9.1. Драйверные слои  
9.2. Символьные имена устройств  
9.3. Основные процедуры драйвера WDM
9.3.1. Процедура DriverEntry
9.3.2. Процедура AddDevice  
9.3.3. Процедура Unload  
9.3.4. Рабочие процедуры драйвера  
9.3.5. Обслуживание запросов IOCTL  
9.4. Загрузка драйвера и обращение к процедурам драйвера  
9.4.1. Процедура работы с драйвером  
9.4.2. Регистрация драйвера  
9.4.3. Обращение к рабочим процедурам  
9.4.4. Хранение драйвера внутри исполняемого файла  
9.5. Инструменты создания драйверов  
9.5.1. NuMega Driver Studio  
9.5.2. Jungo WinDriver  
9.5.3. Jungo KernelDriver  
Глава 10. Спецификация РпР для USB  
10.1. Общие сведения о системе Plug and Play  
10.1.1. Задачи и функции Plug and Play  
10.1.2. Запуск процедуры РпР  
10.1.3. Программные компоненты РпР  
10.2. Plug and Play для USB  
10.2.1. Конфигурирование устройств USB  
10.2.2. Нумерация устройств USB  
10.2.3. РпР-идентификаторы устройств USB  
10.3. Получение списка USB-устройств  
10.4. INF-файл  
10.4.1. Структура INF-файла  
10.4.2. Секция Version  
10.4.3. Секция Manufacturer  
10.4.4. Секция DestinationDirs
10.4.5. Секция описания модели  
10.4.6. Секция xxx.AddReg и xxx.DelReg.
10.4.7. Секция xxx.LogConfig  
10.4.8. Секция xxx.CopyFiles  
10.4.9. Секция Strings  
10.4.10. Связи секций  
10.4.11. Создание и тестирование INF-файлов  
10.4.12. Установка устройств с помощью INF-файла  
10.5. Ветки реестра для USB  
Глава 11. Функции BIOS  
11.1. Сервис BIOS 1AH  
11.1.1. Функция В101Н — определение наличия PCI BIOS
11.1.2. Функция В102Н — поиск PCI-устройства по идентификаторам
устройства и производителя  
11.3. Функция В103Н — поиск PCI-устройства по коду класса
11.4. Функция В108Н — чтение регистра конфигурации (Byte)
11.5. Функция ВЮ9Н — чтение регистра конфигурации (Word)
11.6. Функция В10АН — чтение регистра конфигурации (DWord)
11.7. Функция В10ВН — запись регистра конфигурации (Byte)  
11.1.8. Функция В10СН — запись регистра конфигурации (Word)  
11.1.9. Функция B10DH — запись регистра конфигурации (DWord)  
11.2. Пример использования  
Часть IV. Создание USB-устройств  
Глава 12. USB-периферия  
12.1. Микросхемы Atmel  
12.1.1. Микроконтроллеры с архитектурой MSC-51  
12.1.2. Контроллеры хабов  
12.1.3. Микропроцессоры-хабы с ядром AVR  
12.1.4. Другие микросхемы Atmel  
12.2. Микросхемы Cygnal  
12.2.1. Микропроцессоры C8051F320 и C8051F321  
12.2.2. Другие микросхемы Cygnal  
12.3. Микросхемы FTDI  
12.3.1. Микросхемы FT232AM и FT232BM  
12.3.2. Микросхемы FT245AM и FT245BM  
12.3.3. Микросхема FT2232BM  
12.3.4. Микросхема FT8U100AX   
12.3.5. Отладочные комплекты и модули  
12.3.6. Драйверы  
12.3.7. Дополнительные утилиты  
12.3.8. Другие модули  
12.4. Микросхемы Intel  
12.5. Микросхемы Microchip  
12.6. Микросхемы Motorola  
12.7. Микросхемы Philips  
12.7.1. Микросхемы USB  
12.7.2. Хабы  
12.7.3. Другие микросхемы Philips  
12.8. Микросхемы Texas Instruments  
12.9. Микросхемы Trans Dimension  
12.10. Микросхемы защиты питания  
12.11. Интернет-ресурсы к этой главе  
Глава 13. HID-устройство на основе Atmel AT89C5131  
13.1. Структурная схема АТ89С5131  
13.2. USB-регистры АТ89С5131  
13.2.1. Регистр USBCON  
13.2.2. Регистр USBADDR  
13.2.3. Регистр USBINT  
13.2.4. Регистр USBIEN  
13.2.5. Регистр UEPNUM  
13.2.6. Регистр UEPCONX  
13.2.7. Регистр UEPSTAX  
13.2.8. Регистр UEPRST  
13.2.9. Регистр UEPINT  
13.2.10. Регистр UEPIEN  
13.2.11. Регистр UEPDATX  
13.2.12. Регистр UBYCTLX  
13.2.13. Регистр UFNUML  
13.2.14. Регистр UFNUMH  
13.3. Схемотехника АТ89С5131  
13.4. Инструменты программирования  
13.4.1. Компилятор
13.4.2. Программатор  
13.5. Программа для микропроцессора  
13.5.1. Первая версия программы для АТ89С5131  
13.5.2. Добавляем строковые дескрипторы  
13.5.3. Добавление конечных точек  
13.5.4. Создание HID-устройства  
13.5.5. Обмен данными с HID-устройством  
13.6. Чтение репортов в Windows  
13.7. Дополнительные функции Windows XP  
13.8. Устройство с несколькими репортами   
Глава 14. Создание USB-устройства на основе ATMEL AT89C5131  
14.1. He-HID-устройство  
14.2. Создание драйвера с помощью Driver Studio  
14.2.1. Несколько слово библиотеке Driver Studio  
14.2.2. Другие классы Driver Studio  
14.2.3. Создание шаблона драйвера с помощью Driver Studio  
14.2.4. Доработка шаблона драйвера  
14.2.5. Базовые методы класса устройства  
14.2.6. Реализация чтения данных  
14.2.7. Установка драйвера  
14.2.8. Программа чтения данных  
14.2.9. Чтение данных с конечных точек других типов  
14.2.10. "Чистый" USB-драйвер  
Глава 15. Использование микросхем FTDI  
15.1. Функциональная схема FT232BM  
15.2. Схемотехника FT232BM  
15.3. Функции D2XX  
15.4. Переход от СОМ к USB   
15.4.1. Описание схемы преобразователя  
15.4.2. Установка скорости обмена  
Часть V. Справочник  
Глава 16. Базовые функции Windows  
16.1. Функции CreateFile и CloseHandle: открытие и закрытие объекта  
16.1.1. Дополнительные сведения  
16.1.2. Возвращаемое значение  
16.1.3. Пример вызова  
16.2. Функция ReadFile: чтение данных  
16.2.1. Дополнительные сведения  
16.2.2. Возвращаемое значение  
16.2.3. Пример вызова  
16.3. Функция WriteFile: передача данных
16.3.1. Дополнительные сведения
16.3.2. Возвращаемое значение  
16.3.3. Пример вызова  
16.4. Функция ReadFileEx: АРС-чтение данных  
16.4.1. Возвращаемое значение  
16.4.2. Дополнительные сведения  
16.4.3. Пример вызова  
16.5. Функция WriteFileEx. АРС-передача данных  
16.5.1. Возвращаемое значение  
16.5.2. Пример вызова   
16.6. Функция WaitForSingleObject ожидание сигнального
состояния объекта  
16.6.1. Возвращаемое значение  
16.7. Функция WaitForMultipleObjects: ожидание сигнального
состояния объектов  
16.7.1. Возвращаемое значение  
16.8. Функция GetOverlappedResult результат асинхронной операции  
16.8.1. Возвращаемое значение  
16.9. Функция DeviceloControl: прямое управление драйвером  
16.9.1. Возвращаемое значение  
16.10. Функция QueryDosDevice: получение имени устройства
по его DOS-имени  
16.10.1. Возвращаемое значение  
16.10.2. Пример вызова  
16.11: Функция Define Dos Device: операции с DOS-именем устройства  
16.11.1. Возвращаемое значение  
16.11.2. Пример вызова  
Глава 17. Функции HID API.  
17.1. Функция HidD_Hello: проверка библиотеки  
17.2. Функция HidD_GetHidGuid. получение GUID  
17.3. Функция HidD_GetPreparsedData: создание описателя устройства  
17.4. Функция HidD_FreePreparsedData: освобождение описателя
устройства  
17.5. Функция HidDjGetFeature: получение FEATURE-репорта  
17.6. Функция HidD_SetFeature: передача FEATURE-репорта  
17.7. Функция HidD_GetNumInputBuffers: получение числа буферов  
17.8. Функция HidD_SetNumInputBujfers: установка числа буферов  
17.9. Функция HidD_GetAttributes: получение атрибутов устройства  
17.10. Функция HidDjGetManufactiirerString. получение строки производителя  
17.11. Функция HidD_GetProductString. получение строки продукта  
17.12. Функция HidD__GetSerialNumberString. получение строки серийного номера  
17.13. Функция HidDjGetlndexedString. получение строки по индексу  
17.14. Функция HidD_GetInputReporr. получение INPUT-репорта  
17.15. Функция HidD_SetOutputReport передача OUTPUT-репорта  
17.16. Функция HidP_GetCapy. получение свойств устройства  
17.17. Функция HidP_MaxDataListLength: получение размеров репортов  
Глава 18. Хост-контроллер UCH  
18.1. Регистры управления хост-контроллером  
18.1.1. Регистр команды USB (USBCMD)  
18.1.2. Регистр состояния USB (USBSTS)  
18.1.3. Регистр управления прерываниями (USBINTR)  
18.1.4. Регистр номера кадра (FRNUM)   
18.1.5. Регистр базового адреса кадра (FLBASEADD)  
18.1.6. Регистр модификатора начала кадра (SOFMOD)  
18.1.7. Регистр состояния и управления порта (PORTSC)  
18.2. Структуры данных хост-контроллера UCH  
18.2.1. Список кадров  
18.2.2. Дескриптор передачи t  
18.2.3. Заголовок очереди  
18.3. Обработка списка дескрипторов UCH  
Глава 19. Инструменты  
19.1. Средства Microsoft Visual Studio  
19.1.1. Depends  
19.1.2. Error Lookup  
19.1.3. GuidGen  
19.2. Средства Microsoft DDK  
19.2.1. DeviceTree  
19.2.2. DevCon .-  
19.2.3. Chklnf и Genlnf.  
19.3. Средства CompuWare Corporation  
19.3.1. Monitor  
19.3.2. SymLink  
19.3.3. EzDriverlnstaller  
19.3.4. WdmSniff  
19.4. Средства Syslnternals  
19.4.1. WinObj  
19.5. Средства USB Forum  
19.5.1. HID Descriptor Tool  
19.6. Средства HDD Software  
19.7. Средства Sourceforge  
Приложения  
Приложение 1. Дополнительные функции  
Приложение 2. Таблица идентификаторов языков (LangID)  
Приложение 3. Таблица кодов производителей (Vendor ID, Device ID)
Приложение 4. Описание компакт-диска  
Литература  
Предметный указатель

 

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

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

 

1.Продолжение этой книги "Практика программирования USB"

Категория: Книги | Просмотров: 5461 | Добавил: Mxlt | Теги: USB устройство своими руками, скачать книгу, AVR Atmel, PIC, HID-устройство на основе Atmel AT89, Практика програмирования USB, Агуров Павел | Рейтинг: 5.0/2
Всего комментариев: 0
avatar
Архив записей

Copyright Mxlt.Ucoz.Ru © 2024Сайт управляется системой uCoz
Анализ сайта mxlt.ucoz.ru Рейтинг@Mail.ru