新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于嵌入式應(yīng)用的單芯片USB方案

基于嵌入式應(yīng)用的單芯片USB方案

作者: 時(shí)間:2014-08-14 來源:網(wǎng)絡(luò) 收藏

  技術(shù)的應(yīng)用已經(jīng)從最初應(yīng)用為一種連接外設(shè)和PC的方法經(jīng)過了長足的發(fā)展。標(biāo)準(zhǔn)的靈活性和適應(yīng)性,加上目前流行的基于的存儲(chǔ)設(shè)備和音樂播放器,激發(fā)了許多不是基于PC的系統(tǒng)紛紛采用USB。現(xiàn)在,從電視機(jī)和機(jī)頂盒等家庭娛樂設(shè)備,到智能儀器、機(jī)器控制器、數(shù)碼標(biāo)識(shí)系統(tǒng)和手持終端等工業(yè)應(yīng)用,各種應(yīng)用都正在引入U(xiǎn)SB主機(jī)接口以提供數(shù)據(jù)存儲(chǔ)/傳輸,媒體錄音重放以及其他接口能力。

本文引用地址:http://www.butianyuan.cn/article/261725.htm

  當(dāng)把USB連接引入到一個(gè)現(xiàn)有的應(yīng)用的時(shí)候,對(duì)于如何升級(jí)設(shè)計(jì)者現(xiàn)有的設(shè)計(jì)以支持USB,有多種選擇。一個(gè)選擇就是用一個(gè)具有內(nèi)部USB 協(xié)議處理能力的設(shè)備替代它們現(xiàn)有的處理設(shè)備(CPU或微控制器)。這時(shí)用戶通常需要重新設(shè)計(jì)他們的硬件和軟件的核心部分以支持新的處理器。尤其是如果需要 USB主機(jī)能力,則需要新的軟件設(shè)備驅(qū)動(dòng)和服務(wù)來處理設(shè)備枚舉之類的功能,支持不同的USB設(shè)備類和傳輸模式。對(duì)現(xiàn)有產(chǎn)品作這樣的重要變化,經(jīng)常是非常耗時(shí)并且代價(jià)不菲的。

  

 

  FTDI Vinculum-II (VNC2)模塊圖。

  另一種方法是使用一種現(xiàn)成的USB芯片方案,如英商飛特帝亞有限公司(FTDI)的Vinculum-II(VNC2)。Vinculum 是FTDI的嵌入式USB主/從控制器系列的名稱。最新發(fā)布的第二代芯片 VNC2是針對(duì)在嵌入式應(yīng)用中實(shí)現(xiàn)USB功能時(shí)的許多關(guān)鍵問題而設(shè)計(jì),并提供完整的單芯片USB解決方案。這款芯片的特點(diǎn)是有兩個(gè)獨(dú)立的可配置的USB 主/從接口,一個(gè)用戶可編程處理器核,具有多種靈活的接口以支持輕松集成到一個(gè)現(xiàn)有的嵌入式設(shè)計(jì)中。使用這種方案的好處在于設(shè)計(jì)者能夠重用其現(xiàn)有設(shè)計(jì)的核心部分,用最小的開發(fā)成本和最快的上市時(shí)間支持增強(qiáng)的產(chǎn)品特征。

  進(jìn)一步觀察VNC2的性能,該芯片有2個(gè)獨(dú)立的USB 2.0接口,提供USB主控端或從控端的連接,具有一個(gè)16位哈弗結(jié)構(gòu)CPU核,16K字節(jié)的SRAM存儲(chǔ)器和258K字節(jié)的FLASH用于編程和固件存儲(chǔ)。由兩個(gè)嵌入式的USB主/從控制器以最小的內(nèi)部CPU負(fù)荷實(shí)現(xiàn)完整的USB協(xié)議處理。這樣解放了CPU核,使它可用于用戶處理功能。控制器支持4個(gè)主要的USB傳輸類型(控制、批處理、中斷和同步),因此可以支持廣泛的USB應(yīng)用。

  除了USB接口,VNC2還支持一系列靈活的接口,使之能夠輕松的連接到其他的處理設(shè)備和外設(shè)。所支持的接口包括一個(gè)串行UART接口,用來連接到其它CPU或微控制器,一個(gè)高速FIFO接口,可用于比如一個(gè)ASIC或PLD(可編程邏輯器件)、SPI(串行外設(shè)接口)主從端口、以及8個(gè) PWM(脈沖寬度調(diào)制)通道之間傳輸數(shù)據(jù)以支持相關(guān)電路的控制。圖2為一個(gè)VNC2所提供的靈活連接的例子的細(xì)節(jié)設(shè)計(jì)。

  

 

  圖2:帶有通訊功能的MP3/媒體播放器接口設(shè)計(jì)。

  圖2描述的應(yīng)用是使用FTDI VNC2設(shè)備以對(duì)現(xiàn)有處理單元的最小的負(fù)荷提供MP3和視頻播放以及與現(xiàn)有應(yīng)用的通訊功能。

  MP3/音頻重放:運(yùn)行在VNC2上的固件代碼用于從USB存儲(chǔ)棒上讀取文件。音頻數(shù)據(jù)傳送個(gè)MP3解碼器用于音頻輸出,同時(shí)顯示屏用于圖像或視頻重放。Vinculum II軟件工具鏈具有與USB閃存接口和與顯示控制器和音頻編解碼SPI接口的設(shè)備驅(qū)動(dòng)。通信:通過第二個(gè)可用的USB接口可以對(duì)應(yīng)用增加進(jìn)一步的功能。這里,通過適當(dāng)?shù)腢SB KEY可以增加通訊設(shè)備類(CDC)來支持藍(lán)牙,3G/GPRS通訊。

  對(duì)于所有的嵌入式應(yīng)用,無論是采用電池供電還是市電供電的,電源消耗和管理都是關(guān)鍵問題。為了實(shí)現(xiàn)低耗電工作,VNC2支持各種低功耗模式。在典型的工作模式,CPU運(yùn)行在48MHz,VNC2芯片在1.8V核電壓僅消耗25mA(1.8V是從3.3V供電的芯片內(nèi)部產(chǎn)生的)。要進(jìn)一步降低功耗,可以首先通過降低CPU的工作頻率至24MHz或12MHz的方式,其次可采用通過軟件關(guān)閉芯片上不使用的接口的方式。另外還可使用設(shè)備掛起模式。在掛起模式下,VNC2僅消耗128uA電流。這些不同的功耗模式為用戶提供了設(shè)備功耗管理的優(yōu)良的增益控制,幫助嵌入式應(yīng)用獲取優(yōu)化的功耗性能。

  軟件接口

  在考慮USB應(yīng)用的軟件開發(fā)時(shí),很重要的一點(diǎn)是首先要了解USB軟件的功能。在許多USB連接方案中,有一個(gè)USB主機(jī)(比如PC)和一個(gè) USB從設(shè)備(比如打印機(jī)或USB鍵盤)。在USB從設(shè)備最初連接時(shí),USB主機(jī)(PC)的作用是識(shí)別/枚舉這個(gè)設(shè)備。枚舉涉及到從從設(shè)備中讀取USB的參數(shù)和功能信息。從設(shè)備讀來的信息包含廠商/產(chǎn)品ID,支持的傳輸和設(shè)備類型。這個(gè)設(shè)備類型表示了從設(shè)備的功能和數(shù)據(jù)傳輸要求。比方說USB鍵盤(人機(jī)接口設(shè)備)設(shè)備按照他們不同的用法會(huì)有不同的功能,對(duì)USB存儲(chǔ)器(大容量存儲(chǔ)器類設(shè)備)支持不同的數(shù)據(jù)傳輸。每個(gè)設(shè)備類型會(huì)要求不同的軟件設(shè)備驅(qū)動(dòng)。在 PC應(yīng)用中,操作系統(tǒng)比如Windows執(zhí)行設(shè)備枚舉功能,具有各種驅(qū)動(dòng)支持不同的USB類型。

  在嵌入式應(yīng)用中實(shí)現(xiàn)USB主控功能需要采用類似的方法。集成了USB功能的嵌入式處理設(shè)備需要驅(qū)動(dòng)以支持枚舉和各種USB設(shè)備類型。有些情況下沒有完整的USB驅(qū)動(dòng),需要用戶用盡開發(fā)資源。還有一些特定的設(shè)備結(jié)構(gòu),USB協(xié)議處理是由軟件實(shí)現(xiàn)的,要求設(shè)計(jì)者要么自己開發(fā)要么購買USB協(xié)議棧。這種方式除了開發(fā)和版權(quán)的開銷,USB接口性能也可能被運(yùn)行在設(shè)備CPU上的其他軟件進(jìn)程所限制。

  使用VNC2 USB主/從控制器,用戶可受益于一個(gè)優(yōu)化的結(jié)構(gòu),它具有基于USB處理的硬件和軟件驅(qū)動(dòng)綜合套件,以及在單個(gè)設(shè)備中提供完整USB功能的資源。用戶可以使用Vinculum II軟件工具套件在VNC2上作應(yīng)用開發(fā)。這個(gè)工具有一個(gè)嵌入式RTOS(實(shí)時(shí)操作系統(tǒng))管理下層接口函數(shù),一套設(shè)備驅(qū)動(dòng)支持不同的硬件接口以及各種應(yīng)用層驅(qū)動(dòng)。這個(gè)應(yīng)用層驅(qū)動(dòng)對(duì)不同的USB類型設(shè)備提供支持,比如USB HID,USB主機(jī)和USB設(shè)備。還有其他的應(yīng)用驅(qū)動(dòng)可用于管理FAT文件系統(tǒng)和執(zhí)行磁盤存儲(chǔ)功能。Vinculum II軟件工具套件幫助開發(fā)人員使用這些資源來實(shí)現(xiàn)他們自己的應(yīng)用代碼,允許在VNC2上直接處理用戶數(shù)據(jù),從而不需要在外部MCU或處理器上的主機(jī)處理功能。VNC2的軟件結(jié)構(gòu)圖如圖3所示。

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

上一頁 1 2 下一頁

關(guān)鍵詞: 嵌入式 USB LQFP

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉