一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費注冊]

您的位置:電子發(fā)燒友網(wǎng)>電子元器件>接口定義>

Descriptor描述符解釋

2011年07月16日 09:39 電子發(fā)燒友 作者:葉子 用戶評論(0

?

  在標(biāo)準的USB請求命令中,經(jīng)常會看到Descriptor,這是什么來的呢?

  Descriptor即描述符,是一個完整的數(shù)據(jù)結(jié)構(gòu),可以通過C語言編程實現(xiàn),并存儲在USB設(shè)備中,用于描述一個USB設(shè)備的所有屬性,USB主機是通過一系列命令來要求設(shè)備發(fā)送這些信息的。它的作用就是通過如問答節(jié)中的命令***作來給主機傳遞信息,從而讓主機知道設(shè)備具有什么功能、屬于哪一類設(shè)備、要占用多少帶寬、使用哪類傳輸方式及數(shù)據(jù)量的大小,只有主機確定了這些信息之后,設(shè)備才能真正開始工作,所以描述符也是十分重要的部分,要好好掌握。標(biāo)準的描述符有5種,USB為這些描述符定義了編號:

  1——設(shè)備描述符

  2——配置描述符

  3——字符描述符

  4——接口描述符

  5——端點描述符

  上面的描述符之間有一定的關(guān)系,一個設(shè)備只有一個設(shè)備描述符,而一個設(shè)備描述符可以包含多個配置描述符,而一個配置描述符可以包含多個接口描述符,一個接口使用了幾個端點,就有幾個端點描述符。這間描述符是用一定的字段構(gòu)成的,分別如下說明:

  1、設(shè)備描述符

  struct _DEVICE_DEscriptOR_STRUCT

  {

  BYTE bLength; //設(shè)備描述符的字節(jié)數(shù)大小,為0x12

  BYTE bDescriptorType; //描述符類型編號,為0x01

  WORD bcdUSB; //USB版本號

  BYTE bDeviceClass; //USB分配的設(shè)備類代碼,0x01~0xfe為標(biāo)準設(shè)備類,0xff為廠商自定義類型

  //0x00不是在設(shè)備描述符中定義的,如HID

  BYTE bDeviceSubClass; //usb分配的子類代碼,同上,值由USB規(guī)定和分配的

  BYTE bDeviceProtocl; //USB分配的設(shè)備協(xié)議代碼,同上

  BYTE bMaxPacketSize0; //端點0的最大包的大小

  WORD idVendor; //廠商編號

  WORD idProduct; //產(chǎn)品編號

  WORD bcdDevice; //設(shè)備出廠編號

  BYTE iManufacturer; //描述廠商字符串的索引

  BYTE iProduct; //描述產(chǎn)品字符串的索引

  BYTE iSerialNumber; //描述設(shè)備序列號字符串的索引

  BYTE bNumConfiguration; //可能的配置數(shù)量

  }

  

    本文導(dǎo)航

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

( 發(fā)表人:葉子 )

      發(fā)表評論

      用戶評論
      評價:好評中評差評

      發(fā)表評論,獲取積分! 請遵守相關(guān)規(guī)定!

      ?