飛凌干貨丨幫你避開USB VBUS上的“坑”

原創(chuàng) 2020-03-07 18:53:00 Am335x USB VBUS

 

最近有些客戶自己繪制的板子遇到USB的使用問題,主要表現(xiàn)在USB設(shè)備不識(shí)別,VBUS 報(bào)錯(cuò)等。最后分析出的結(jié)果很多都是掉進(jìn)了USB VBUS設(shè)計(jì)上的坑里。所以在這里簡(jiǎn)單地分享下USB VBUS設(shè)計(jì)注意事項(xiàng)。我們拿AM335x平臺(tái)作為例子來說明。

▼先上一張AM335x RM里關(guān)于USB OTG引腳的說明圖

 

相比其他的平臺(tái),TI的AM335x對(duì)VBUS的定義比較特殊,從上圖可以看到USBx_VBUS不再是一個(gè)簡(jiǎn)單的電源輸入,而是作為USB的電壓檢測(cè)輸入,這一點(diǎn)很重要,一會(huì)再說。

AM335x采用的是兩路USB OTG控制器。

所謂的OTG,就是USB模塊可以在host模式和device模式之間切換工作。相比早期芯片里的USB HOST控制,OTG控制器不僅在內(nèi)部狀態(tài)機(jī)設(shè)計(jì)更加復(fù)雜,而且增加了幾路外部信號(hào)以及相對(duì)應(yīng)的檢測(cè),比如ID腳以及VBUS檢測(cè)。但是許多客戶在設(shè)計(jì)中,往往都只將關(guān)注點(diǎn)放到了ID腳的處理上,而簡(jiǎn)單地認(rèn)為VBUS處理與USB  HOST控制器相同。其實(shí)VBUS是一個(gè)非常重要的檢測(cè)信號(hào),OTG 控制器在USB 設(shè)備識(shí)別、HOST 和device模式切換過程中,VBUS都作為一個(gè)觸發(fā)開關(guān)來用,而在普通的USB HOST控制器里,VBUS僅僅只是作為供電電源使用。

USB剛一開始連接,會(huì)瞬間需要高于500mA的電流。這時(shí)如果VBUS的電流供電能力不足,就會(huì)在5V上產(chǎn)生跌坑。

▼下圖即為我們?yōu)橐豢蛻襞挪閱栴}時(shí)抓到的跌落波形

 

這個(gè)電壓跌落一方面可能會(huì)引起USB 設(shè)備工作的異常,另一方面,當(dāng)這個(gè)電壓跌落低于4.4V時(shí),AM335x會(huì)停止進(jìn)行下一步的枚舉過程,同時(shí)進(jìn)入到VBUS 錯(cuò)誤處理(或者叫VBUS過流處理)并輸出相應(yīng)錯(cuò)誤信息。完成處理后重新開始HOST 或DEVICE工作模式的檢測(cè)。

這個(gè)跌落的產(chǎn)生很有可能是本身電源電路設(shè)計(jì)問題,啟動(dòng)或插拔設(shè)備時(shí)5V電源供電能力不夠。

■ 由于客戶的產(chǎn)品為樣機(jī)階段,我們建議優(yōu)化電源設(shè)計(jì),同時(shí)在USB_VBUS上按照官方推薦添加120uF的電容。電容的主要目的就是為了在出現(xiàn)跌坑時(shí),有及時(shí)放電的過程以保證電壓的穩(wěn)定。

■ 如果不修改電源設(shè)計(jì),這個(gè)問題還有一種處理方案,剛剛上面提到了AM335x的VBUS只是電壓檢測(cè)而已,并不會(huì)過很大的電流,所以只需添加一個(gè)RC濾波電路把這個(gè)跌落濾除即可,經(jīng)過測(cè)試此方案可行,即使外部5V跌落依然存在,但是經(jīng)過RC后到達(dá)VBUS上的電壓沒有變化,USB設(shè)備識(shí)別正常。

其實(shí)如果使用其他的平臺(tái)還有另一種方案,AM335X的VBUS閾值電壓是4.4V,是不可以修改的,但是像IMX6系列或者S5P4418這些CPU的VBUS閾值是可以修改的,如果使用類似這些可以調(diào)整閾值的平臺(tái),也可以通過降低閾值來達(dá)解決這個(gè)問題,不需要改PCB就可以正常使用USB設(shè)備(當(dāng)然這是下策)。

▼下圖為IMX6Q RM中提到的VBUS閾值設(shè)置

 

USB VBUS的“坑”就先給大家分享到這里,希望對(duì)您的設(shè)計(jì)和排查問題有一定幫助。


相關(guān)產(chǎn)品 >

  • FET335xD核心板

    飛凌AM335系列核心板基于TI RM Cortex-A8 架構(gòu) AM335x 微處理器設(shè)計(jì),AM335x核心板整板尺寸47*71mm;AM335X核心板芯片全部采用工業(yè)級(jí)用料;AM335x核心板引腳豐富,引出200pinCPU引腳,原生支持6路UART;AM335x核心板支持市面上主流的操作系統(tǒng),Linux-RT、Linux3.2。更多AM335x系列概述,AM335處理器特點(diǎn)請(qǐng)聯(lián)系在線客服
    了解詳情
    FET335xD核心板
  • OK335xD開發(fā)板

    飛凌AM335x開發(fā)板已經(jīng)推出幾年,經(jīng)過行業(yè)檢測(cè),穩(wěn)定性得到肯定。多年行業(yè)積累,AM335x的解決方案涉及各行各業(yè),歡迎進(jìn)店咨詢。飛凌AM335x開發(fā)板基于TI Cortex-A8 AM335x CPU設(shè)計(jì)開發(fā),主頻800MHz,支持Linux、RTLinux。AM335x開發(fā)板工業(yè)級(jí)寬溫,配合豐富的外設(shè)接口,適用于各種惡劣環(huán)境應(yīng)用。 了解詳情
    OK335xD開發(fā)板
  • FET62xx-C核心板

    FET6254-C核心板基于TI Sitara? AM62x系列工業(yè)級(jí)處理器設(shè)計(jì)。采用Arm Cortex A53架構(gòu),并集成了廣泛的接口,如2路支持TSN的千兆以太網(wǎng)、USB 2.0CAN-FD,AM6254核心板兼容AM62x全系列處理器,提供單核、雙核、四核可選,功能引腳完全兼容,飛凌嵌入式已經(jīng)適配AM6254 AM6231 AM6232三款芯片為您帶來靈活的成本組合方案,AM62x可應(yīng)用于廣泛的工業(yè)環(huán)境,如人機(jī)界面(HMI)、工業(yè)計(jì)算機(jī)、邊緣計(jì)算、零售自動(dòng)化、充電樁控制單元(TCU)、醫(yī)療設(shè)備等。

    了解詳情
    FET62xx-C核心板
  • OK62xx-C開發(fā)板

    AM62x 開發(fā)板是圍繞飛凌AM62x核心板設(shè)計(jì)的獨(dú)立測(cè)試和開發(fā)平臺(tái)。AM62x處理器由四核64位Arm -Cortex -A53微處理器 和Cortex-M4F組成。AM62x開發(fā)板整板工業(yè)級(jí)設(shè)計(jì),并在開發(fā)過程中進(jìn)行嚴(yán)苛的環(huán)境溫度測(cè)試、壓力測(cè)試、長期穩(wěn)定性運(yùn)行測(cè)試,使AM62x可在各種嚴(yán)苛環(huán)境穩(wěn)定運(yùn)行 了解詳情
    OK62xx-C開發(fā)板

推薦閱讀 換一批 換一批