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

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

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

嵌入式系統(tǒng)應(yīng)用中USB主設(shè)備的功能分析

454398 ? 來源:羅姆半導體社區(qū) ? 作者:羅姆半導體社區(qū) ? 2023-02-03 15:05 ? 次閱讀

來源:羅姆半導體社區(qū)

USB已經(jīng)成為設(shè)備和PC之間通信的標準方式,從通用設(shè)備(如閃存設(shè)備和鼠標)到專用設(shè)備,該標準幾乎完全替代了其他的串行通信協(xié)議。

USB外圍設(shè)備彼此之間不能相互通信,它們只能與具有控制總線能力的USB主設(shè)備通信。直到最近,也只有PC具有主設(shè)備能力。但目前,許多微控制器也具有了嵌入式USB主設(shè)備的功能,這使得嵌入式應(yīng)用可以連接更加廣泛的USB外圍設(shè)備。

USB閃存驅(qū)動器是一種使用非常廣泛的USB外圍設(shè)備,它已經(jīng)成為傳遞或存儲大量數(shù)據(jù)的廉價介質(zhì),許多數(shù)據(jù)記錄設(shè)備正是得益于它才得以發(fā)展。對于遠程的長期數(shù)據(jù)記錄,可以先采集,并存儲在閃存驅(qū)動器中,然后帶回到方便分析處理的地方。

閃存驅(qū)動器也可以用于向PC中傳輸高速時間相關(guān)數(shù)據(jù)。PC是極好的數(shù)據(jù)分析工具,但實時能力有限。相反,嵌入式應(yīng)用特別適合實時數(shù)據(jù)采集,但數(shù)據(jù)分析能力通常很弱。嵌入式實時數(shù)據(jù)記錄儀可以在閃存驅(qū)動器上存儲數(shù)據(jù),然后把數(shù)據(jù)傳輸?shù)絇C上分析,這樣二者的優(yōu)勢都得到了充分的發(fā)揮。

嵌入式USB主設(shè)備的應(yīng)用

開始嵌入式設(shè)計的首要任務(wù)之一是選擇微控制器。為了使用閃存驅(qū)動器,微控制器就必須具有嵌入式USB主設(shè)備的能力。如果微控制器具有USB OTG(On-The-Go)或USB雙角色(Dual Role)功能,如Microchip公司PIC24FJ256GB1微控制器,它也可以支持嵌入式USB主設(shè)備功能。USB外圍設(shè)備,有時也稱為USB設(shè)備模式,只能用作閃存驅(qū)動器等,而不能和其他USB外圍設(shè)備通信。

其次,設(shè)計者應(yīng)該確信能有完整的開發(fā)工具。至少也需要一個器件編程器(如果有一個調(diào)試器是最好的)和一個C語言編譯器,因為嵌入式USB主設(shè)備和運行在微控制器中的程序往往是用C語言而不是用匯編語言編寫的。

最后,設(shè)計者也應(yīng)該了解哪些軟件庫是可以獲得的,因為嵌入式設(shè)備發(fā)現(xiàn)閃存驅(qū)動器時的握手操作需要USB設(shè)備類、FAT32文件系統(tǒng)和其他庫的支持。從頭開始設(shè)計支持嵌入式USB主設(shè)備的工作會需要數(shù)月的時間,而一個由經(jīng)過認證的協(xié)議棧組成的方案可以節(jié)省相當多的時間。

為了使用閃存驅(qū)動器,嵌入式設(shè)備也需要一種USB海量存儲類(Mass Storage Class)設(shè)備的終端驅(qū)動程序、硬件命令行接口,以及文件系統(tǒng)接口。通常,具有2Gb或更低存儲空間的閃存驅(qū)動器使用FAT16文件系統(tǒng),而更大容量的閃存驅(qū)動器將使用FAT32文件系統(tǒng)。

設(shè)計要求

一旦選定了微控制器,硬件設(shè)計就開始了。USB硬件設(shè)計需要遵循以下許多規(guī)則。

如果嵌入式主設(shè)備需要支持USB設(shè)備類,它對外圍的供電就必須能夠提供500mA的電流。

如果嵌入式主設(shè)備需要支持任何消耗電流超過100mA的設(shè)備,它也必須能夠提供500mA的電流。

如果嵌入式主設(shè)備需支持消耗電流100mA或更低的設(shè)備,那么VBUS電壓限制就可以降低到4.4V。然而,如果嵌入式主設(shè)備需支持消耗電流超過100mA的設(shè)備,那么VBUS電壓限制是 4.75V,就和全功能主設(shè)備一樣。

必須重新設(shè)計無須用戶干預就可復位的過流保護機制。

USB連接器收發(fā)器之間的傳輸延遲必須在8ns之內(nèi)。

嵌入式USB主設(shè)備在VBUS上的電容必須大于120μF,而且USB OTG設(shè)備在VBUS上的電容必須為1.0?6.8μF。

除以上規(guī)則外,也必須仔細考慮采用嵌入式USB主設(shè)備應(yīng)用的用戶接口。USB外圍設(shè)備通常用在PC上,萬一發(fā)生錯誤就可以提供詳細的錯誤信息。如果LED指示燈閃爍,用戶能夠知道連接失敗了。USB規(guī)范也作了強制性的規(guī)定,經(jīng)過認證的USB嵌入式主設(shè)備必須提供錯誤信息。換句話說,所有錯誤信息必須被明確地通知應(yīng)用層,也就是告知用戶。

USB設(shè)備認證

USB認證主要用于保證USB設(shè)備符合USB規(guī)范的要求。認證可以在各種獨立的測試機構(gòu)進行。一旦產(chǎn)品通過認證,生產(chǎn)商就被允許使用USB標志,但同樣需要遵守額外的許可證限制。

產(chǎn)品也可以不通過USB認證而直接進行生產(chǎn)和銷售。沒有USB認證,生產(chǎn)商可以聲明自己的產(chǎn)品支持USB,但他不能在設(shè)備或包裝上的任何地方使用USB標志。通常,取得USB嵌入式主設(shè)備認證是不太難的。

通過USB通信

實現(xiàn)USB嵌入式主設(shè)備的一個最大挑戰(zhàn)就是要和各種各樣的USB外圍設(shè)備通信。雖然不是所有的閃存驅(qū)動器產(chǎn)品都通過了認證,但是如果在嵌入式設(shè)備中一種閃存驅(qū)動器可以正常使用,而另一種沒有任何原因就不能使用時,用戶是不會高興的。

如果閃存驅(qū)動器需要的上電時間是允許最大時間的兩倍或一半,或由于主機以最大允許的速率輪詢時閃存驅(qū)動器被鎖住,以及因為閃存驅(qū)動器需要一種不同的SCSI命令序列來建立通信等,這都不會有任何問題。但如果這樣的閃存驅(qū)動器在主設(shè)備上不能運行,在PC上卻可以正常使用,用戶會批*這一主設(shè)備。因此,確保進行廣泛的測試,與多種沒有進行認證的USB外圍設(shè)備進行通信,即使它只是一個拇指大的閃存驅(qū)動器或一根電纜。

雖然嵌入式USB主設(shè)備可以提供USB類級的支持,在進行設(shè)計和測試時,也應(yīng)該考慮對特殊USB外圍設(shè)備支持的限制,通過對VID(供應(yīng)商ID)和PID(產(chǎn)品ID)的識別來保證產(chǎn)品能在設(shè)計的應(yīng)用領(lǐng)域正常使用。這個ID列表是指USB執(zhí)行者論壇所發(fā)布的目標外圍設(shè)備列表(TPL),它是為了獲得嵌入式主設(shè)備認證所必須服從的檢查項目列表。完整的OTG認證實際上僅需要與TPL列表中的VID/PID標志的產(chǎn)品互操作。

審核編輯黃宇

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

    關(guān)注

    112

    文章

    15895

    瀏覽量

    175413
  • 嵌入式
    +關(guān)注

    關(guān)注

    5046

    文章

    18822

    瀏覽量

    298676
  • usb
    usb
    +關(guān)注

    關(guān)注

    60

    文章

    7780

    瀏覽量

    262431
收藏 人收藏

    評論

    相關(guān)推薦

    嵌入式系統(tǒng)的未來趨勢有哪些?

    (ML)技術(shù)的快速發(fā)展,嵌入式系統(tǒng)將更多地整合這些先進技術(shù),以支持智能決策和自動化。在設(shè)備上直接運行AI和ML模型,進行圖像識別、自然語言處理、預測分析等任務(wù),將極大提升
    發(fā)表于 09-12 15:42

    機器視覺在嵌入式的應(yīng)用

    機器視覺在嵌入式系統(tǒng)的應(yīng)用是一個廣泛而深入的話題,涉及到許多不同的領(lǐng)域和技術(shù)。 機器視覺在嵌入式系統(tǒng)
    的頭像 發(fā)表于 07-16 10:30 ?267次閱讀

    嵌入式系統(tǒng)軟硬件基礎(chǔ)知識大全

    ,它們分別用于串行通信、高速數(shù)據(jù)傳輸和設(shè)備連接。而通信協(xié)議則規(guī)定了設(shè)備之間傳輸數(shù)據(jù)的格式和規(guī)則,如TCP/IP、HTTP和MQTT等。掌握這些接口和協(xié)議,可以讓我們更好地設(shè)計和實現(xiàn)嵌入式系統(tǒng)
    發(fā)表于 05-09 14:12

    入門嵌入式系統(tǒng)這些知識你知道嗎?

    嵌入式系統(tǒng)是一種專用的計算機系統(tǒng),作為裝置或設(shè)備的一部分。通常,嵌入式系統(tǒng)是一個控制程序存儲在R
    發(fā)表于 05-03 09:54 ?398次閱讀

    USB嵌入式主機堆棧

    USB標準下,USB設(shè)備之間不能直接通信。它們只能與控制一個或多個設(shè)備通信的總線的 USB 主機通信。常見的
    發(fā)表于 05-03 09:13 ?130次閱讀
    <b class='flag-5'>USB</b><b class='flag-5'>嵌入式</b>主機堆棧

    嵌入式熱門發(fā)展方向有哪些?

    已經(jīng)體現(xiàn)了嵌入式系統(tǒng)的優(yōu)勢;在信息家電領(lǐng)域,冰箱、空調(diào)等的網(wǎng)絡(luò)化、智能化將引領(lǐng)人們的生活步入一個嶄新的空間,即使你不在家里,也可以通過電話線、網(wǎng)絡(luò)進行遠程控制,在這些設(shè)備,
    發(fā)表于 04-11 14:17

    嵌入式fpga是什么意思

    嵌入式FPGA是指將FPGA技術(shù)集成到嵌入式系統(tǒng)的一種解決方案。嵌入式系統(tǒng)是一種為特定應(yīng)用而設(shè)
    的頭像 發(fā)表于 03-15 14:29 ?1021次閱讀

    定制嵌入式主板,需要考慮的功能有哪些?

    隨著科技的不斷發(fā)展和進步,嵌入式系統(tǒng)在各行各業(yè)得到了廣泛的應(yīng)用。嵌入式主板作為嵌入式系統(tǒng)的核心
    的頭像 發(fā)表于 02-29 17:38 ?375次閱讀
    定制<b class='flag-5'>嵌入式</b>主板,需要考慮的<b class='flag-5'>功能</b>有哪些?

    嵌入式系統(tǒng)發(fā)展前景?

    設(shè)備、健康監(jiān)測等領(lǐng)域有著廣泛的應(yīng)用前景。隨著人們對健康的重視程度不斷提高,嵌入式系統(tǒng)將更為深入地應(yīng)用于醫(yī)療設(shè)備和健康護理,實現(xiàn)個人健康管理
    發(fā)表于 02-22 14:09

    啥是嵌入式?嵌入式都有啥?薪資如何?前景如何

    嵌入式系統(tǒng)(Embedded Systems)是一種特殊類型的計算機系統(tǒng),被嵌入到其他設(shè)備系統(tǒng)
    的頭像 發(fā)表于 01-17 16:39 ?470次閱讀
    啥是<b class='flag-5'>嵌入式</b>?<b class='flag-5'>嵌入式</b>都有啥?薪資如何?前景如何

    什么是嵌入式板卡?

    嵌入式板卡是配備處理器、各種集成電路、接口和其他關(guān)鍵組件的電路板,所有這些組件都組裝起來以執(zhí)行特定功能。如USB、Ethernet、串口、GPIO等,以便連接外部設(shè)備和傳感器。它們還可
    的頭像 發(fā)表于 12-20 16:17 ?659次閱讀
    什么是<b class='flag-5'>嵌入式</b>板卡?

    什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用

    嵌入式,一般是指嵌入式系統(tǒng)。用于控制、監(jiān)視或者輔助操作機器和設(shè)備的裝置。
    的頭像 發(fā)表于 12-20 13:33 ?2138次閱讀

    有無操作系統(tǒng)嵌入式Linux驅(qū)動設(shè)備有何區(qū)別?

    有無操作系統(tǒng)嵌入式Linux驅(qū)動設(shè)備有何區(qū)別? 嵌入式系統(tǒng)是指集成電子設(shè)備上的計算機
    的頭像 發(fā)表于 10-29 17:29 ?603次閱讀

    基于Linux的嵌入式Web Server系統(tǒng)在溫室設(shè)備監(jiān)控系統(tǒng)的應(yīng)用

    電子發(fā)燒友網(wǎng)站提供《基于Linux的嵌入式Web Server系統(tǒng)在溫室設(shè)備監(jiān)控系統(tǒng)的應(yīng)用.pdf》資料免費下載
    發(fā)表于 10-27 09:29 ?0次下載
    基于Linux的<b class='flag-5'>嵌入式</b>Web Server<b class='flag-5'>系統(tǒng)</b>在溫室<b class='flag-5'>設(shè)備</b>監(jiān)控<b class='flag-5'>系統(tǒng)</b><b class='flag-5'>中</b>的應(yīng)用

    基于ARM架構(gòu)的嵌入式USB驅(qū)動的設(shè)計

    電子發(fā)燒友網(wǎng)站提供《基于ARM架構(gòu)的嵌入式USB驅(qū)動的設(shè)計.pdf》資料免費下載
    發(fā)表于 10-12 10:17 ?1次下載
    基于ARM架構(gòu)的<b class='flag-5'>嵌入式</b><b class='flag-5'>USB</b>驅(qū)動的設(shè)計