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

 

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

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

Агуров П.В. Интерфейсы USB. Практика использования и программирования — СПб.: БХВ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interface2004.djvu
Предыдущая << 1 .. 155 156 157 158 159 160 < 161 > 162 163 164 165 .. 166 >> Следующая

; Function: COOO (SEIECT_CONFIGURATIOH) ;ContiguraticMVDescriptor.: ' ^ :,-'..-':v
blength: 9 (0x09) • bDescriptorType: 2 ••(OxOJ) 7"\.. •^Totailength: 18 (0x0012)
bHu»Interfaces: 1 (0x01)
bConfiguration Value:, 1 (0x01); ,,
!Configuration: 0 (0x00)
AboutSnoopyPro
SnoopyPio "0.22
¦Copyright ICj "2000-200?' Hana '<
tom]b.
'DK,..
.Seady"-"
!NUM Г
Рис. 19.14. Программа SnoopyPro
Приложения
Приложение 1
Дополнительные функции
Для преобразования BCD-чисел в строку номера версии мы используем очень простую функцию, код которой показан в листинге П1.1
Листинг П1.1. Преобразование BCD-числа в строку
function BCD2Str(Value : Word) : String; begin Result:=
IntToHex(Value shr 8, 2) + Il старшая часть версии ' .' + Il разделитель
IntToHex(Value and $00FF, 2); Il младшая часть версии
end;
В DOS-программах мы пользовались функциями преобразования числа в шестнадцатеричную строку. Ради экономии места мы не приводили эти функции в исходных листингах, но собрали такие функции в листинге П1.2.
|ЛистингД1.2; Дополнительные функции преобразования
Unit StrFunc;
INTERFACE
Function Byte2Hex(B: Byte): String; Function Long2Hex(B: Longint): String; Function Pointer2Hex(P : Pointer):String;
IMPLEMENTATION
538
Приложения
Function Byte2Hex(B: Byte): String; Const hStr : String ='0123456789ABCDEF'; Begin
Byte2Hex:= hStr[(B div 16)+1]+ hStr[(B mod 16)+1]; End;
Function Long2Hex(B: Longint):String; Begin Long2Hex:=
Byte2Hex((B and $0FF000000) shr 24) +
Byte2Hex((B and $000FF0000) shr 16) +
Byte2Hex((B and $00000FF00) shr 8) +
Byte2Hex((B and $0000000FF) shr 0) ; End;
Function Pointer2Hex(P : Pointer):String; Begin
Pointer2Hex:= Long2Hex(Seg(Рл))+':'+Long2Hex(Ofs(Рл)); End;
END.
Приложение 2
Таблица идентификаторов языков (LanglD)
Список идентификаторов содержится в спецификации USB-LANGID. Актуальный на данный момент список приведен в табл. П2.1.
Таблица П2.1. Таблица идентификаторов языков
ID Язык ID j Язык ID і Язык
0x041 с Albanian 0x3409 I English (Philippines) 0x0446 I Punjabi.
0x0401 Arabic (Saudi Arabia) 0x0425 ! Estonian 0x0418 I Romanian
0x0801 Arabic (Iraq) 0x0438 I Faeroese 0x0419 : Russian
0х0с01 Arabic (Egypt) 0x0429 і Farsi 0x044f I Sanskrit.
0x1001 Arabic (Libya) 0x040b j Finnish OxOd a ! Serbian I (Cyrillic)
0x1401 Arabic (Algeria) 0x040c І French (Standard) 0x081 a I Serbian (Latin)
0x1801 Arabic (Morocco) 0x080c і French (Belgian) 0x0459 і Sindhi
0x1с01 Arabic (Tunisia) OxOcOc ! French (Canadian) 0x041b і Slovak
0x2001 Arabic (Oman) 0x100c j French і (Switzerland) 0x0424 I Slovenian
0x2401 Arabic (Yemen) 0x140c I French I (Luxembourg) 0x040a ; Spanish І (Traditional і Sort)
0x2801 Arabic (Syria) 0x180c I French (Monaco) 0x080a ; Spanish j (Mexican)
I
540
Приложения
Таблица П2.1 (продолжение)
ID Язык ID Язык ID Язык
Ох2с01 Arabic (Jordan) 0x0437 Georgian OxOcOa Spanish (Modern Sort)
0x3001 Arabic (Lebanon) 0x0407 German (Standard) 0x100a Spanish (Guatemala)
0x3401 Arabic (Kuwait) 0x0807 German (Switzerland) 0x140a Spanish (Costa Rica)
0x3801 Arabic (U.A.E.) 0x0c07 German (Austria) 0x180a Spanish (Panama)
0хЗс01 Arabic (Bahrain) 0x1007 German (Luxembourg) OxIcOa Spanish (Dominican Republic)
0x4001 Arabic (Qatar) 0x1407 German (Liechtenstein) 0x200a Spanish (Venezuela)
0х042Ь Armenian 0x0408 Greek 0x240a Spanish (Colombia)
0x044d Assamese 0x0447 Gujarati 0x280a Spanish (Peru)
0x042с Azeri (Latin) 0x040d Hebrew 0x2c0a Spanish (Argentina)
0x082с Azeri (Cyrillic) 0x0439 Hindi 0x300a Spanish (Ecuador)
0x042d Basque 0x040e Hungarian 0x340a Spanish (Chile)
0x0423 Belarusian 0x040f Icelandic 0x380a Spanish (Uruguay)
0x0445 Bengali. 0x0421 Indonesian ОхЗсОа Spanish (Paraguay)
0x0402 Bulgarian 0x0410 Italian (Standard) 0x400a Spanish (Bolivia)
0x0455 Burmese 0x0810 Italian (Switzerland) 0x440a Spanish (EI Salvador)
0x0403 Catalan 0x0411 Japanese 0x480a Spanish (Honduras)
Приложение 2. Таблица идентификаторов языков (LanglD)
541
Таблица П2.1 (продолжение)
ID і Язык ID j Язык ID : ЯЗЫК
0x0404 і Chinese (Taiwan) 0x044b І Kannada 0x4c0a j Spanish ! (Nicaragua)
0x0804 j Chinese (PRC) 0x0860 І Kashmiri (India) 0x500a ; Spanish I (Puerto Rico)
0x0c04 І Chinese (Hong ! Kong SAR, PRC) 0x1004 ! Chinese j (Singapore) 0x043f І Kazakh 0x0457 I Konkani 0x0430 j Sutu 0x0441 І Swahili І (Kenya)
0x1404 і Chinese (Macau I SAR) 0x0412 j Korean 0x041 d І Swedish
0x041 a j Croatian 0x0812 І Korean (Johab) 0x081d j Swedish і (Finland)
0x0405 jCzech 0x0426 І Latvian 0x0449 I Tamil
0x0406 і Danish 0x0427 j Lithuanian 0x0444 j Tatar ! (Tatarstan)
0x0413 і Dutch I (Netherlands) 0x0827 j Lithuanian (Classic) 0x044a j Telugu
0x0813 І Dutch (Belgium) 0x042f j Macedonian 0x041 e ! Thai
0x0409 і English (United ! States) 0x043e j Malay (Malaysian) 0x041 f j Turkish
0x0809 j English (United I Kingdom) 0x083e ! Malay (Brunei j Darussalam) 0x0422 і Ukrainian
0x0c09 j English І (Australian) 0x044c I Malayalam 0x0420 ! Urdu j (Pakistan)
Предыдущая << 1 .. 155 156 157 158 159 160 < 161 > 162 163 164 165 .. 166 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100