0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

USB數(shù)據(jù)最小的單位域有哪些類型

電子工程師 ? 來源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-09-26 11:53 ? 次閱讀

USB數(shù)據(jù)是由二進(jìn)制數(shù)字串構(gòu)成的,首先數(shù)字串構(gòu)成域(有七種),域再構(gòu)成包,包再構(gòu)成事務(wù)(IN、OUT、SETUP),事務(wù)最后構(gòu)成傳輸(中斷傳輸、并行傳輸、批量傳輸和控制傳輸)。下面介紹一下域、包和事務(wù)。

域是USB數(shù)據(jù)最小的單位,由若干位組成(多少位由具體的域決定),域可分為七個(gè)類型:

1、同步域(SYNC)

所有的USB包都由SYNC開始,高速包的SYNC寬度為32bit,全速/低速包的SYNC段度為8bit。實(shí)際接收到的SYNC長度由于USB HUB的關(guān)系,可能會(huì)小于該值。八位的值固定為0000 0001,用于本地時(shí)鐘與輸入同步。

2、標(biāo)識(shí)域(PID)

由四位標(biāo)識(shí)符 + 四位標(biāo)識(shí)符反碼構(gòu)成,表明包的類型和格式,這是一個(gè)很重要的部分,這里可以計(jì)算出,USB的標(biāo)識(shí)碼有16種。USB2.0使用了十六種標(biāo)識(shí)碼,標(biāo)識(shí)碼的作用是用來說明包的屬性的,標(biāo)識(shí)碼是和包聯(lián)系在一起的,標(biāo)識(shí)碼分別有以下十六種:

令牌包 :

0x01:輸出(OUT)啟動(dòng)一個(gè)方向?yàn)橹鳈C(jī)到設(shè)備的傳輸,并包含了設(shè)備地址和標(biāo)號(hào)。

0x09:輸入(IN) 啟動(dòng)一個(gè)方向?yàn)樵O(shè)備到主機(jī)的傳輸,并包含了設(shè)備地址和標(biāo)號(hào)。

0x05:幀起始(SOF)表示一個(gè)幀的開始,并且包含了相應(yīng)的幀號(hào)。

0x0d:設(shè)置(SETUP)啟動(dòng)一個(gè)控制傳輸,用于主機(jī)對(duì)設(shè)備的初始化。

數(shù)據(jù)包 :

0x03:偶數(shù)據(jù)包(DATA0)。

0x0b:奇數(shù)據(jù)包(DATA1)。

握手包:

0x02:確認(rèn)接收到無誤的數(shù)據(jù)包(ACK)。

0x0a:無效,接收(發(fā)送)端正在忙而無法接收(發(fā)送)信息。

0x0e:錯(cuò)誤,端點(diǎn)被禁止或不支持控制管道請求。

特殊包0x0C前導(dǎo),用于啟動(dòng)下行端口的低速設(shè)備的數(shù)據(jù)傳輸。

3、地址域(ADDR):七位地址,代表了設(shè)備在主機(jī)上的地址,地址000 0000被命名為零地址,是任何設(shè)備第一次連接到主機(jī)時(shí),在被主機(jī)配置、枚舉前的默認(rèn)地址,由此可以知道為什么一個(gè)USB主機(jī)只能接127個(gè)設(shè)備的原因。

4、端點(diǎn)域(ENDP),四位,由此可知一個(gè)USB設(shè)備端點(diǎn)數(shù)量最大為16個(gè)。

5、幀號(hào)域(FRAM),11位,每一個(gè)幀都有一個(gè)特定的幀號(hào),幀號(hào)域最大容量0x800,對(duì)于同步傳輸有重要意義。

6、數(shù)據(jù)域(DATA):長度為0~1023字節(jié),在不同的傳輸類型中,數(shù)據(jù)域的長度各不相同,但必須為整數(shù)個(gè)字節(jié)的長度。

7、校驗(yàn)域(CRC):對(duì)令牌包和數(shù)據(jù)包中非PID域進(jìn)行校驗(yàn)的一種方法,CRC校驗(yàn)在通訊中應(yīng)用很泛,是一種很好的校驗(yàn)方法,CRC碼的除法是模2運(yùn)算,不同于10進(jìn)制中的除法。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7850

    瀏覽量

    263327
  • USB數(shù)據(jù)
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    6588

原文標(biāo)題:USB數(shù)據(jù)格式

文章出處:【微信號(hào):gh_9d70b445f494,微信公眾號(hào):FPGA設(shè)計(jì)論壇】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    USB接口常見的類型哪些

    接口類型,以及它們的簡要介紹: USB 1.x USB 1.0 :最初的USB標(biāo)準(zhǔn),數(shù)據(jù)傳輸速度為1.5 Mbps(低速)。
    的頭像 發(fā)表于 10-21 13:45 ?101次閱讀

    存儲(chǔ)器容量單位哪些

    存儲(chǔ)器容量單位是指用于衡量存儲(chǔ)設(shè)備中存儲(chǔ)數(shù)據(jù)能力的單位。在計(jì)算機(jī)科學(xué)中,這些單位構(gòu)成了一個(gè)完整的體系,從最小
    的頭像 發(fā)表于 09-05 12:41 ?866次閱讀

    can數(shù)據(jù)哪幾個(gè)組成

    CAN(控制器局域網(wǎng)絡(luò))是一種基于消息傳遞的通信協(xié)議,廣泛應(yīng)用于汽車、工業(yè)自動(dòng)化和嵌入式系統(tǒng)等領(lǐng)域。CAN協(xié)議的數(shù)據(jù)幀是用于傳輸信息的基本單位。 1. CAN數(shù)據(jù)幀概述 CAN數(shù)據(jù)幀是
    的頭像 發(fā)表于 07-24 15:14 ?562次閱讀

    CAN數(shù)據(jù)幀的各個(gè)及其作用

    CAN數(shù)據(jù)幀由多個(gè)組成,包括幀起始、仲裁、控制數(shù)據(jù)和幀結(jié)束。每個(gè)
    的頭像 發(fā)表于 07-24 15:10 ?657次閱讀

    芯和半導(dǎo)體科技公布EDA模型數(shù)據(jù)單位切換方法與裝置

    此項(xiàng)創(chuàng)新涵蓋了EDA模型數(shù)據(jù)單位切換的全過程,具體包括:首先,獲得EDA模型的最初和當(dāng)前數(shù)據(jù)單位;其次,根據(jù)上述兩個(gè)數(shù)值計(jì)算出全局轉(zhuǎn)換因子;再者,識(shí)別
    的頭像 發(fā)表于 03-25 10:22 ?335次閱讀
    芯和半導(dǎo)體科技公布EDA模型<b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>單位</b>切換方法與裝置

    C語言數(shù)據(jù)類型哪些

    在 C 語言中,數(shù)據(jù)類型指的是用于聲明不同類型的變量或函數(shù)的一個(gè)廣泛的系統(tǒng)。變量的類型決定了變量存儲(chǔ)占用的空間,以及如何解釋存儲(chǔ)的位模式。
    發(fā)表于 03-20 10:56 ?377次閱讀
    C語言<b class='flag-5'>數(shù)據(jù)類型</b><b class='flag-5'>有</b>哪些

    電機(jī)參數(shù)的單位哪些

    :N?m 反電動(dòng)勢系數(shù)Ke:V?s/rad,V/rpm 轉(zhuǎn)矩常數(shù)Kt:N?m/A 有些電機(jī)參數(shù)多個(gè)單位表示法,但是作為將電能轉(zhuǎn)換為機(jī)械能時(shí)的單位,需要按照粗體顯示的單位N·m、rad
    的頭像 發(fā)表于 02-05 16:00 ?3749次閱讀

    什么是USB HOST、USB Slave和USB OTG?它們之間什么區(qū)別?

    什么是USB HOST、USB Slave和USB OTG?它們之間什么區(qū)別? USB(通用串行總線)是一種用于連接設(shè)備的通信接口標(biāo)準(zhǔn),它
    的頭像 發(fā)表于 02-02 15:32 ?1.1w次閱讀

    電容的單位換算哪些 電容的單位換算公式

    電容是衡量電路中儲(chǔ)存電荷能力的物理量,常用的單位有法拉(F),較小的單位毫法拉(mF),微法拉(μF)和皮法拉(pF)。在電容的單位換算中,需要注意各個(gè)
    的頭像 發(fā)表于 02-02 11:16 ?1.1w次閱讀

    電容的單位哪些? 分別是?

    電容是電學(xué)中的一種重要物理量,用來描述電荷在電場中積累的能力。電容的單位以下幾種: 法(Farad,簡寫為F):法是國際單位制中的電容單位,它表示1庫侖電荷在1伏特電勢下的儲(chǔ)存能力。
    的頭像 發(fā)表于 01-25 16:24 ?4901次閱讀

    oracle的數(shù)據(jù)類型哪些

    Oracle數(shù)據(jù)庫中有許多數(shù)據(jù)類型可供選擇,每種數(shù)據(jù)類型都有其各自的特點(diǎn)和適用場景。下面是對(duì)Oracle數(shù)據(jù)庫中最常用的數(shù)據(jù)類型的詳盡說明,
    的頭像 發(fā)表于 12-05 16:45 ?2151次閱讀

    javascript的基本數(shù)據(jù)類型哪些

    JavaScript 是一種動(dòng)態(tài)的、面向?qū)ο蟮木幊陶Z言,廣泛應(yīng)用于 Web 開發(fā)中。在 JavaScript 中,七種基本數(shù)據(jù)類型(Primitive Types),它們分別是 Undefined
    的頭像 發(fā)表于 12-03 11:17 ?683次閱讀

    c語言源程序的基本單位

    C語言源程序的基本單位是函數(shù)。函數(shù)是一組有關(guān)聯(lián)的語句和表達(dá)式的集合,它們一起完成特定的任務(wù)。在C語言中,程序的執(zhí)行是以函數(shù)為單位的,每個(gè)函數(shù)都有自己的功能和作用。函數(shù)由函數(shù)名、參數(shù)列表、返回值
    的頭像 發(fā)表于 11-26 09:05 ?1858次閱讀

    單位增益穩(wěn)定的運(yùn)放是什么類型的運(yùn)放?

    大家好!我個(gè)項(xiàng)目中設(shè)計(jì)二階巴特沃斯低通濾波器,截止頻率160KHz,需要的增益是0.62,我選了一個(gè)增益帶寬積28MHz的運(yùn)放,運(yùn)放手冊里寫是一個(gè)“單位增益穩(wěn)定”的運(yùn)放,我看一些資料中寫濾波器增益
    發(fā)表于 11-23 06:08

    數(shù)據(jù)的位是什么?C語言中常見的數(shù)據(jù)類型哪些?

    本文介紹關(guān)于C語言中數(shù)據(jù)類型的相關(guān)知識(shí),比如常見的數(shù)據(jù)類型哪些,怎么定義和使用數(shù)據(jù)類型等。 1 、數(shù)據(jù)的位是什么? 計(jì)算機(jī)系統(tǒng)的存儲(chǔ)
    的頭像 發(fā)表于 11-08 15:55 ?1297次閱讀
    <b class='flag-5'>數(shù)據(jù)</b>的位是什么?C語言中常見的<b class='flag-5'>數(shù)據(jù)類型</b><b class='flag-5'>有</b>哪些?