国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

哪些網(wǎng)站可以用來(lái)做百科參考西安關(guān)鍵詞優(yōu)化軟件

哪些網(wǎng)站可以用來(lái)做百科參考,西安關(guān)鍵詞優(yōu)化軟件,做網(wǎng)站 大文件,建設(shè)電子商務(wù)網(wǎng)站的規(guī)劃書(shū)一、 前言 斷斷續(xù)續(xù)做了不少USB相關(guān)開(kāi)發(fā),但是沒(méi)有系統(tǒng)去了解過(guò),遇到問(wèn)題就很被動(dòng)了。做這個(gè)USB轉(zhuǎn)UART的項(xiàng)目就是,于是專(zhuān)門(mén)花了一天的時(shí)間學(xué)習(xí)USB及CDC相關(guān),到寫(xiě)這文章時(shí)估計(jì)也忘得差不多了,趁項(xiàng)目收尾階段記錄一下&am…

一、 前言

斷斷續(xù)續(xù)做了不少USB相關(guān)開(kāi)發(fā),但是沒(méi)有系統(tǒng)去了解過(guò),遇到問(wèn)題就很被動(dòng)了。做這個(gè)USB轉(zhuǎn)UART的項(xiàng)目就是,于是專(zhuān)門(mén)花了一天的時(shí)間學(xué)習(xí)USB及CDC相關(guān),到寫(xiě)這文章時(shí)估計(jì)也忘得差不多了,趁項(xiàng)目收尾階段記錄一下,方便后面翻閱。
本文內(nèi)容(包括圖片)絕大多數(shù)來(lái)源網(wǎng)絡(luò),侵刪。參考鏈接:
USB官網(wǎng)
USB通用串行總線基礎(chǔ)知識(shí)詳述
USB端點(diǎn)和傳輸協(xié)議(數(shù)據(jù)包、事物)詳解

二、 總線

USB歷代接口

經(jīng)過(guò)多年發(fā)展,USB速率越來(lái)越高,總線由最初4根線,半雙工發(fā)展到多根線,全雙工。本文是基于 USB 2.0 版本,記錄最初最基礎(chǔ)的知識(shí),了解了這些基礎(chǔ),后面的版本就很容易了。

USB總線

USB全速(高速)接線圖

信號(hào)名稱(chēng)說(shuō)明
Vbus電源,DC 5V
D+叉分信號(hào)線,正
D-叉分信號(hào)線,負(fù)
GND電源地

由上面可知,USB 2.0 只有4根線,兩根數(shù)據(jù)線是高速串行叉分線,半雙工。電源線用來(lái)主機(jī)給從設(shè)備供電,最大500mA, 5V * 500mA = 2.5W, 功率不是很高。后來(lái)的快速充電技術(shù)要么提升了電壓和電流,例如9V * 2A = 18W, 再后來(lái)USB接口增加了電源和數(shù)據(jù)線的數(shù)量,傳輸速率和供電功率都大大提升。

數(shù)據(jù)編解碼和位填充

USB采用NRZI(非歸零編碼)對(duì)發(fā)送的數(shù)據(jù)包進(jìn)行編碼 。輸入數(shù)據(jù)0, 編碼成“電平翻轉(zhuǎn)” ;輸入數(shù)據(jù)1, 編碼成“電平不變” ;(NRZI遇0翻轉(zhuǎn),遇1不變)。

USB NRZi編碼格式

三、 USB總線系統(tǒng)中的設(shè)備

可以分為三種類(lèi)型:

  • 主機(jī):?只能有一個(gè),管理USB系統(tǒng);
  • 集線器(USB HUB):?用來(lái)擴(kuò)展設(shè)備;
  • 設(shè)備:?終端設(shè)備,如下圖的鼠標(biāo)鍵盤(pán)打印機(jī);

    USB設(shè)備拓?fù)?/p>

四、 端點(diǎn)(Endpoints)

在USB規(guī)范中,設(shè)備端點(diǎn)是唯一可尋址可通信的基本單元,端點(diǎn)是有通信方向的。物理上一個(gè)USB總線(4根線)連接一個(gè)設(shè)備終端,這個(gè)設(shè)備終端邏輯上可以有多個(gè)接口,每個(gè)接口可以有多個(gè)端點(diǎn),從而在主機(jī)的系統(tǒng)上看該設(shè)備終端可能有多個(gè)設(shè)備。例如本項(xiàng)目,一個(gè)USB口擴(kuò)展7個(gè)UART設(shè)備。
端點(diǎn)0:?每個(gè)終端設(shè)備肯定會(huì)有一個(gè)端點(diǎn)0,用于剛連接到主機(jī)時(shí)的初始化和枚舉。想象一下,一個(gè)USB設(shè)備終端可能有10個(gè)8個(gè)端點(diǎn),剛插到主機(jī)時(shí),主機(jī)并不清楚,所以規(guī)定了一定要有一個(gè)端點(diǎn)0,主機(jī)最開(kāi)始只與端點(diǎn)0通信,然后把其它的設(shè)備,接口,端點(diǎn)枚舉出來(lái)。

端點(diǎn)類(lèi)型

USB規(guī)范定義了四種端點(diǎn)類(lèi)型:

  • 控制端點(diǎn): 收發(fā)控制信息,也可以傳輸數(shù)據(jù)。
  • 中斷端點(diǎn): 用于傳輸少量的數(shù)據(jù),實(shí)時(shí)時(shí)效性比較好,例如鍵盤(pán)鼠標(biāo)。
  • 批量端點(diǎn): 用于傳輸大批量數(shù)據(jù),實(shí)時(shí)時(shí)效性沒(méi)要求,例如U盤(pán)文件傳輸。
  • 等時(shí)端點(diǎn): 連續(xù),實(shí)時(shí)的傳輸,例如音頻。

    ?

    不同端點(diǎn)類(lèi)型比較

五、 數(shù)據(jù)傳輸

USB通信包含一系列的幀,USB在2.0時(shí)代,分為低速設(shè)備(1.5Mbps),全速設(shè)備(12Mbps)和高速設(shè)設(shè)備(480Mbps).這些設(shè)備使用的幀的時(shí)間間隔是1±0.0005ms,而對(duì)于高速設(shè)備,又將每個(gè)幀分成了8個(gè)微幀,這樣每個(gè)微幀的時(shí)間間隔變成了125±0.0625us。
每一幀包含一個(gè)起始幀(Start of Frame, SOF), 然后是若干個(gè)事務(wù)(Transaction)。每個(gè)事務(wù)由一系列數(shù)據(jù)包(packet)組成。每個(gè)數(shù)據(jù)包以同步標(biāo)識(shí)(SYNC)開(kāi)始,以結(jié)束標(biāo)識(shí)(EOP)結(jié)束。有三種類(lèi)型的包:令牌包,數(shù)據(jù)包,握手包。幀,事務(wù),包關(guān)系如下圖:

USB幀事務(wù)數(shù)據(jù)包關(guān)系圖

包(package)

包是USB系統(tǒng)中信息傳輸?shù)幕締卧?#xff0c;所有數(shù)據(jù)都是經(jīng)過(guò)打包后在總線上傳輸?shù)?。USB包由五部分組成,即同步字段(SYNC)、包標(biāo)識(shí)符字段(PID)、數(shù)據(jù)字段、循環(huán)冗余校驗(yàn)字段(CRC)和包結(jié)尾字段(EOP),包的基本格式如下:

同步域(SYNC)

由8位/32位組成,作為每個(gè)數(shù)據(jù)包的前導(dǎo),用來(lái)產(chǎn)生同步作用,使USB設(shè)備與總線的包傳輸率同步,它的數(shù)值固定為000000001。作用:

  • 通知USB串行接口引擎數(shù)據(jù)要開(kāi)始傳輸;
  • 同步主機(jī)和設(shè)備之間的時(shí)鐘。
標(biāo)識(shí)符字段(PID)

包標(biāo)識(shí)符PID是用來(lái)標(biāo)識(shí)一個(gè)包的類(lèi)型。PID共有8位,目前USB協(xié)議僅使用4位(PID0 - PID3),另外4位(PID4 - PID7)是PID0 - PID3的取反,用來(lái)校驗(yàn)PID。傳輸?shù)捻樞驗(yàn)镻ID0,PID1,PID2,PID3,...,PID7。

令牌包(token packet, PID1~0為01)、數(shù)據(jù)包(data packet, PID1~0為11)、握手包(handshake packet, PID1~0為10)、特殊包(special packet, PID1~0為00):

令牌類(lèi)型.

特殊包是一些在特殊場(chǎng)合使用的包??偣灿?種:PRE、ERR、SPLIT和PING。其中PRE、SPLIT和PING是令牌包,ERR是握手包。這里不打算展開(kāi)講。

幀傳輸過(guò)程

如下圖,所有通信都由主機(jī)定時(shí)發(fā)起,幀頭一定是SOF,然后包含多個(gè)事務(wù),每個(gè)事務(wù)有多個(gè)包,每個(gè)包都是SYNC開(kāi)頭,EOP結(jié)束。要注意每個(gè)事務(wù)是有應(yīng)答的,即一個(gè)幀里面數(shù)據(jù)傳輸?shù)姆较蚴遣粩嗲袚Q的。下圖中,主機(jī)先發(fā)一個(gè)SOF,然后發(fā)一個(gè)SETUP包,這個(gè)包帶有DATA0,設(shè)備端收到后返回ACK。然后主機(jī)連續(xù)發(fā)了3個(gè)IN令牌包,前2個(gè)從設(shè)備端都回復(fù)NAK,表示無(wú)數(shù)據(jù)上傳。第3個(gè)IN回復(fù)數(shù)據(jù)了,主機(jī)收到后回復(fù)了ACK。然后下一幀,主機(jī)發(fā)送SOF后,發(fā)了個(gè)OUT令牌包,跟著又發(fā)送了數(shù)據(jù)DATA0,從設(shè)備端回復(fù)ACK。

USB幀時(shí)間數(shù)據(jù)傳輸過(guò)程.

舉一個(gè)實(shí)際的例子,全速USB傳輸每一個(gè)幀為1ms。首先會(huì)發(fā)送一個(gè)SOF包(幀起始包),此時(shí)USB主機(jī)檢測(cè)到總線沒(méi)有事務(wù)可以傳輸,則總線進(jìn)入idel(空閑狀態(tài)),這里的空閑時(shí)間996.917us,3us左右是EOP占用的時(shí)間。
5個(gè)idle后,有事務(wù)了,分析一下這次傳輸。同樣的首先會(huì)發(fā)送一個(gè)SOF包(幀起始包),等了176.817us后,緊接著USB主機(jī)會(huì)發(fā)送一個(gè)SETUP令牌包,收到ACK后繼續(xù)SETUP包和數(shù)據(jù)包,從設(shè)備端也返回了ACK包。下一個(gè)是IN的事務(wù),不詳細(xì)講。兩個(gè)事務(wù)傳輸完成后,主機(jī)檢測(cè)到?jīng)]有事務(wù)了,總線同樣會(huì)進(jìn)入空閑狀態(tài),這里空閑了478.767us。所有的時(shí)間開(kāi)銷(xiāo)加起來(lái)差不多1ms。然后后面又有幾個(gè)沒(méi)有事務(wù)的幀。

全速USB幀內(nèi)容

實(shí)際開(kāi)發(fā)中,當(dāng)MCU做從設(shè)備時(shí),一般MCU的軟件架構(gòu)都是在中斷中響應(yīng)主機(jī)端各種交互,例如可配置每個(gè)SOF都產(chǎn)生一個(gè)中斷,或者收到SETUP包后產(chǎn)生中斷,在中斷中處理相應(yīng)事務(wù),軟件不能做太耗時(shí)的處理,一般產(chǎn)生事件標(biāo)志然后異步處理。數(shù)據(jù)IN是預(yù)先拷貝到指定的緩存(或者DMA緩存),當(dāng)主機(jī)輪詢(xún)時(shí),硬件自動(dòng)上傳,沒(méi)有數(shù)據(jù)就回復(fù)NAK。數(shù)據(jù)OUT也是硬件先接收到指定的緩存(或DMA緩存),回復(fù)ACK,接收完后產(chǎn)生中斷,通知軟件處理。

(END)

http://m.aloenet.com.cn/news/39796.html

相關(guān)文章:

  • 醫(yī)院網(wǎng)站建設(shè)目的萬(wàn)網(wǎng)域名查詢(xún)接口
  • 長(zhǎng)沙網(wǎng)站建設(shè)開(kāi)發(fā)seo百度網(wǎng)站排名軟件
  • 西安網(wǎng)站建設(shè)陜icp投廣告哪個(gè)平臺(tái)好
  • 網(wǎng)站源碼分享網(wǎng)google服務(wù)框架
  • 怎樣建俄文網(wǎng)站濟(jì)南網(wǎng)站推廣優(yōu)化
  • 本地手機(jī)網(wǎng)站建設(shè)灰色行業(yè)推廣平臺(tái)
  • wordpress 插入音樂(lè)浙江seo公司
  • 優(yōu)化外包顧問(wèn)青島seo網(wǎng)站排名優(yōu)化
  • 深圳網(wǎng)站seo教程簡(jiǎn)述提升關(guān)鍵詞排名的方法
  • 網(wǎng)站備案負(fù)責(zé)人幕布照無(wú)憂(yōu)seo博客
  • 成都企業(yè)模板建站線上銷(xiāo)售方案
  • 阜康網(wǎng)站建設(shè)軟件推廣方案經(jīng)典范文
  • 濟(jì)南做網(wǎng)站0531soso做網(wǎng)站多少錢(qián)一年
  • 武漢建設(shè)信息網(wǎng)站嘉興網(wǎng)站建設(shè)制作
  • 壽光市住房和建設(shè)局網(wǎng)站地推app推廣賺傭金
  • 用自己的照片做頭像的網(wǎng)站aso優(yōu)化師工作很賺錢(qián)嗎
  • 湖北省住房和城鄉(xiāng)建設(shè)廳網(wǎng)站的公示公告考研培訓(xùn)班集訓(xùn)營(yíng)
  • 常州市網(wǎng)站建設(shè)seo單頁(yè)面優(yōu)化
  • 做網(wǎng)站的開(kāi)題報(bào)告怎么寫(xiě)百度應(yīng)用商店app下載安裝
  • 建設(shè)網(wǎng)站建站公司軟件外包公司有前途嗎
  • 網(wǎng)站 php .net佛山網(wǎng)站建設(shè)排名
  • 建設(shè)一個(gè)網(wǎng)站app注冊(cè)推廣拉人
  • dw8做網(wǎng)站步驟圖銷(xiāo)售怎么找客戶(hù)源
  • 石家莊市和城鄉(xiāng)建設(shè)局網(wǎng)站今日頭條10大新聞
  • 書(shū)畫(huà)網(wǎng)站建設(shè)方案策劃百度公司電話(huà)是多少
  • 優(yōu)秀定制網(wǎng)站建設(shè)案例鎮(zhèn)江關(guān)鍵字優(yōu)化公司
  • 做網(wǎng)店好還是網(wǎng)站好鄭州網(wǎng)站優(yōu)化公司
  • 北京外包做網(wǎng)站如何報(bào)價(jià)杭州seo外包服務(wù)
  • 做pc端網(wǎng)站多少錢(qián)微信引流推廣怎么找平臺(tái)
  • 西安做網(wǎng)站南通公司開(kāi)發(fā)一個(gè)平臺(tái)需要多少錢(qián)