通用序列匯流排(USB)無處不在的便利性突顯出其對於須要連接個人電腦(PC)或其他主機裝置進行配置、定期下載資料或韌體更新的應用,確實為絕佳的介面。這些應用通常為可攜式裝置,例如由遠端收集資料以便在日後上傳的醫療或工業工具。由於這些應用皆為可攜式裝置,因此最終的USB實作必須符合成本效益,並具有節能效果。
USB成功的其中一個主因為其絕佳的使用便利性。然而實際上,為了讓使用者完全不會感受到其中的複雜度,USB背後的技術其實是極為複雜的。因此,剛接觸USB的開發人員往往低估所須投入的心力,尤其USB技術中有許多新名詞和程序,且效果往往不如預期。
看不見的難題會造成開發人員無預期的延誤,而且延誤的代價相當高。對於想要讓自己的產品具備差異性,並為客戶提供最佳品質的開發人員而言,這些難題會是令人不樂見的重大負擔。因此,德州儀器(TI)提供的USB技術均為整合式簡便型解決方案,讓開發人員得以著重於在應用中使用USB,而非理論式的技術學習。
新USB微控制器應運而生
為滿足開發人員的需求,TI已內建全速USB於MSP430微控制器(MCU)F5xx系列,並將USB功能與強大效能(高達25MHz)、大量記憶體如快閃記憶體與唯讀記憶體(RAM)、整合式智慧型周邊(包括晶片內建類比/數位轉換器、比較器、硬體乘法模組、DMA控制器、溫度感應器與其他周邊),以及絕佳的電源管理相結合,因此,對於在嵌入式應用中執行USB,MSP430是理想的微控制器(圖1)。
|
圖1 將USB與MSP430架構的強大效能與高整合性相互整合,使得微控制器相當適用於在嵌入式應用中執行USB。 |
對於需要USB連線功能及類比周邊且須達到極低功耗的應用而言,只要加入USB連接器和一些離散式裝置,MSP430 USB微控制器便可成為完整的解決方案。從軟體的角度而言,TI為應用程式介面(API)堆疊支援提供三種最常見的裝置類別。
全新的MSP430 USB微控制器採用TI最新且最先進的MSP430架構,也就是F5xx。每顆裝置可分別支援1.8~3.6伏特運作,且時脈速度高達25MHz,並具有200奈安培(nA)的整合型可程式電源監控。全新的時脈來源進一步加大電源、速度、精準度及成本的效益,並可在整個Vcc範圍內進行快閃記憶體寫入/抹除。除了提供多樣化的快閃記體容量(現已推出64K~128KB,2010年第一季將推出16K~256KB)外,具有USB功能的MSP430裝置也有USB專用的2KB隨機存取記憶體(RAM),因此當USB停用時,即可作為一般用途。
加速USB開發與便利性
消費者和工程人員都希望USB簡單易用。事實上,當USB被視為類似於通用非同步收發傳輸器(UART)和串列周邊介面(SPI)連接埠之後,通訊協定的執行便顯得不繁瑣。
但不同於UART或SPI介面,標準相容性是USB設計的主要考量,即使是最簡單的應用也是如此。例如,主機可以隨時暫停所連接的裝置,裝置也必須能夠處理意外移除。對於未曾經歷此程序的開發人員而言,這一類出乎預期的考量需要額外的開發時間,因此會導致非預期的延誤。
MSP430的USB支援的另一項優點是,透過直覺式API堆疊即可進行USB執行。API堆疊的設計能夠很快就讓開發人員了解,如同USB一般,這些堆疊的複雜度不高,因此,開發人員在設計中毋須排除障礙,並有助於縮短開發時程。對於須要完全控制的開發人員,也提供堆疊原始碼。完整的程式設計人員指南並針對各個堆疊,詳盡說明API函數及深層的概念。
此外,TI也提供MSP430 USB描述元工具作為「控制台」,以便進行快速配置。該工具可根據使用者的輸入,自動產生各個USB裝置必須回報給主機的描述元,進而節省開發人員大量的時間,並以正確的方式完成描述元。
堆疊可用於大部分常見的裝置類別,且毋須額外付費即可提供。雖然開發人員不應低估製作穩定的USB介面所須付出的心力,不過TI仍大幅縮短學習USB所需的時間。因此,開發人員便毋須深入了解USB技術,而能夠專注於運用USB提升應用的價值及可用性。
可支援多種裝置類別
簡便的MSP430 USB API堆疊,可以支援下列三種裝置類別:
‧ |
|
|
CDC將PC應用的USB連接埠呈現為標準COM連接埠。COM連接埠為常用的介面,具有彈性、快速且簡易的使用性。由於須要大量傳輸,因此CDC提供高頻寬,但是仍具有簡易的使用性。使用CDC的主要缺點是,開發人員必須將簡易的檔案提供給使用者,才能夠與Windows內建的CDC驅動程式產生關聯。幸好,Windows的「偵測新裝置」安裝相當簡捷,使用者都相當能夠接受。
|
‧ |
|
|
雖然HID一詞通常會令人想到滑鼠和鍵盤,不過這是涵蓋多種應用的裝置類別。TI的HID API能有效發揮HID功能,因此不會產生與HID回報相關的複雜度,而讓開發人員能夠透過與CDC裝置/COM連接埠相同的方式運用此介面。由於頻寬方面的限制(64KB/s),因此不會像CDC一般須要提供任何檔案,而且會在Windows中自動載入,毋須執行任何安裝程序。
|
‧ |
|
|
MSC可用以執行相當成功的USB隨身碟,以及數位相機與讀卡機。由於其設計能夠傳輸大量資料,因此與CDC一樣提供高頻寬。不過,其中的缺點是複雜度較高,例如開發人員必須執行檔案系統,而且須要使用較多的編碼空間。與HID相同的是,MSC裝置會在Windows中自動載入,完全不須要進行任何安裝程序。TI免費提供MSC API層。由於其中具備處理系統的軟體所需的多樣化配置、不同媒體類型及快閃記憶體管理(透過均勻抹除及其他技術)等功能,因此開發人員可採行市售的執行方式,也可以使用任一種MSP430適用的開放原始碼系統。
|
在這三種裝置類別中,開發人員應該先考慮HID。若應用程式能在可用的64KB/s頻寬內運作,HID通常是最符合成本效益的選擇,使用者只須將其插入即可使用,完全不必安裝。由於Windows安裝程序有時候會對使用者造成困擾,所以避免安裝有助於減少對於支援的需求,並提升客戶的投資報酬率。
TI USB API堆疊支援三種資料傳輸類型,包括對於USB層級控制/狀態資料的控制、低頻寬固定延遲資料的中斷,以及高頻寬可變延遲資料的大量傳輸。這些資料類型的使用取決於裝置類別,因此開發人員不必在意不同類型大部分的相關細節。透過這些資料類型,MSP430的USB可支援須要控制/配置、韌體更新或相較於資料串流的大量資料傳輸的任何應用。MSP430不支援如高頻寬或固定延遲的等時性資料,因此不適用於音訊/視訊串流的應用。
MSP430相當具有彈性,其USB功能也是如此。任何USB裝置都有許多端點。支援多個端點有助於實現能與主機進行彈性通訊的複合USB裝置。例如,使用MSC進行大量資料傳輸且使用HID管理控制與狀態的裝置,包含三個輸入端點及三個輸出端點。MSP430架構支援多達八個輸入端點及八個輸出端點,能夠提供大多數應用所需的效能,不會造成成本負擔過大。
低功耗運作要求勢不可免
無論是否使用USB,MSP430架構本身都相當適合低功耗運作。例如,MSP430裝置具有五種低功耗模式,能夠讓設計人員延長可攜式應用的電池壽命。MSP430能夠以最低功耗達到高效能,使用功耗最低可達160μA/MHz,待機模式僅需1.5微安培(μA),且可以不到5微秒的時間從待機模式快速喚醒,供電電壓最低可達1.8伏特。與電池供電的主機進行通訊時,內建DMA控制器也可節省大量電源。
嵌入式應用中USB的其中一項優點是,能夠透過介面為裝置供電。理論上,電池供電的裝置連接到主機時,透過匯流排進行供電可達到最長的運作時間。USB可透過匯流排供應5伏特,而低壓降穩壓器(LDO)須將電壓降至IC常見的3.3伏特。MSP430裝置整合有效的LDO及相關上拉功能,因此可簡化電源設計,並節省電路板空間。除了能使MSP430直接以5伏特運作外,整合LDO及上拉電阻可減少所需元件數,並節省與離散式執行相關的0.15~0.20美元。將USB電源及其他MSP430模組的電源管理分開,只要將USB裝置連接到主機,即可為USB模組供電。這也能夠使USB模組即使在裝置電池的電量用盡,或沒有裝置電池的情況下,透過USB電源自動供電給MSP430。
MSP430的設計能夠在LDO的電源限制內運作,並可將USB匯流排的電源關閉,以供電給整個系統。從外部VUSB驅動3.3伏特輸出之後,MSP430即可將高達12毫安培(mA)的電流供應給系統(圖2),而且毋須使用系統LDO。對於高電流系統(需要12毫安培以上的電流)或對於即使進行USB連接仍透過電池供電給裝置的應用,MSP430能夠略過整合式LDO而從外部電源或穩壓器驅動DVcc(圖3)。TI提供低成本的TPS73033、低功耗的TPS67233、低雜訊的TPS1733及低雜訊高電流的TPS73433/735等適用的多樣化外部LDO。
|
圖2 MSP430 USB微控制器能將USB匯流排的電源關閉,以12毫安培供電給整個系統。 |
|
圖3 對於高電流系統或對於即使進行USB連接仍透過電池供電給裝置的應用,MSP430能夠略過整合式3.3伏特LDO而從外部電源供應驅動DVcc。 |
5伏特USB匯流排電源也可作為電池充電的主要來源(圖4)。在此配置中,無論USB連接埠是否插入主機中,DVcc皆由電池供應。插入連接埠時,充電器便能夠透過USB接收電力來進行電池充電。TI BQ2407x/3x系列充電器相當適合USB電池充電應用。
|
圖4 USB的電源也可做為電池充電的主要來源。TI BQ2407x/3x系列充電器相當適合USB電池充電應用。 |
以滑鼠和鍵盤為例,其中使用的低速USB一般不適用於需一般用途微控制器處理資料的任何應用。尤其以較緩慢的資料速率進行傳輸,會浪費匯流排頻寬,而且因為需要微控制器在較長的傳輸期間內持續保持於運行中,而耗用較多的電力。同樣地,除非應用須要支援大量音訊或視訊傳輸,否則高速USB提供的頻寬過多;全速USB較適合大多數嵌入式應用。
USB成本較低 優於嵌入式主機
雖然OTG(On-The-Go)看似不錯的選項,不過對於許多應用並不適合。嵌入式主機必須能將8毫安培供應給連接的裝置,而且如此的需求使得許多公司重新考慮支援OTG主機功能,尤其是對於需要以單顆電池達到長效使用時間的應用。對於需要OTG支援的應用,TI提供Stellaris和C2000微控制器系列的解決方案。
一般而言,相較於嵌入式主機,USB裝置的成本較低,且較為簡便迅速。具有USB功能的MSP430能符合USB裝置的需求,完全不會對這些應用增加複雜度,且無需額外的記憶體、整合式周邊及較大的電源供應,即可執行USB主機。
為簡化USB,TI提供多樣化的工具及軟體,有助於開發人員加速運用及執行穩定的USB解決方案。除API堆疊之外,TI也提供以下的產品:
‧ |
|
|
USB描述元工具能簡化USB設計和實作。此圖形使用者介面(GUI)型工具會自動配置USB堆疊,以反應特定應用的特殊需求,進而處理描述元欄位的管理,包括廠商識別碼(VID)、產品識別碼(PID)、字串、從主機汲取多少電量等。為了深入探究各種USB描述元欄位,開發人員毋須分析USB堆疊並撰寫程式碼以支援其應用,描述元工具會從開發人員收集所需的資訊,並自動產生API堆疊的適當軟體修改,開發人員不須要再進行任何動作。此外,USB描述元工具能夠讓複合裝置的高階堆疊配置更為簡易。
|
‧ |
|
|
TI的載入器(BSL)對需要欄位韌體更新功能的開發人員是另一項重要的工具。USB的其中一個常見用途是將更新送至部署的裝置。例如,醫師可將醫療儀器插入PC中,讓其可迅速自動更新全新功能或進行錯誤修正。BSL工具能將韌體影像檔案轉換為自含式PC執行檔,此執行檔可傳遞給終端使用者。所有的MSP430裝置都配備BSL,當透過USB執行時,即使裝置電源未啟動也可安全進行更新,亦即MSP430透過USB啟動電源,因此可快速有效進行生產線程式設計,完全不須要安裝電池。對於開發人員而言,啟動程序最複雜的部分是以自身的標誌自訂BSL執行檔。
|
‧ |
|
|
TI也提供開發人員參與VID分享計畫的機會。各個USB裝置都需要VID和PID。對於僅製造生產幾種裝置的公司而言,TI可提供VID和獨特的PID,這有助於省卻向USB團體註冊VID所須投入的時間及成本。
|
透過USB描述元工具、啟動載入器、API堆疊及眾多協力廠商提供的其他支援軟體來處理執行USB的細節,TI將處理USB的程序簡化。TI的MSP430提供USB所需的大部分基礎,讓開發人員可專注於應用的加值元件,而毋須顧慮USB等複雜介面相關的許多執行問題。
高整合度讓開發更容易
除整合USB外,這些新型控制器也支援標準MSP430架構的其他多項功能和周邊,使得開發可更進一步簡化,其中包括:
‧ |
|
|
此一彈性的可程式鎖相迴路(PLL)可調整為多種晶片頻率,好讓開發人員根據與應用相關的標準選擇頻率,例如成本、系統內部其他元件,或者系統內部其他位置是否須要該頻率用於其他目的。
|
‧ |
|
|
極低功耗振盪器(VLO)能讓開發人員在主機暫停時保持USB模組持續運作。這一點相當重要,因為USB模組必須能夠辨識主機喚醒的時間。VLO此時汲取的電流屬於微安培以下的範圍。
|
‧ |
|
|
MSP430 USB微控制器也提供新的比較器用於產生遲滯,完全無需外部元件。許多應用都須根據兩個臨界值監測輸入,例如電池充電和電容式觸控介面。一般的比較器只能監測一個臨界值,且必須設定為監測上升或下降的臨界值,並在臨界值超過時切換到另一個臨界值。全新的比較器B是使用R階的多功能參考值產生器,能夠產生三十二種不同的電壓參考值。如此的做法完全不需要外部元件,而且使用外部電阻時,也無需穩定的電源汲極。比較器B能以超低功耗(一般0.1微安培至最大0.5微安培)、正常(一般10微安培至最大30微安培)及高速(一般40微安培至最大65微安培)等三種模式運作,以最佳化應用的功耗。
|
‧ |
|
|
以USB為基礎之MSP430微控制器的其中一項獨特功能是連接埠對應控制器。透過連接埠對應,開發人員能夠動態重新配置數位輸出,例如特定範圍接腳中整個的計時器脈衝寬度調變(PWM)或SPI/I2C介面。這類對應能達到電路板設計時間訊號路由的彈性,以便設計人員在必要時將訊號移至IC的另一端。各個數位輸出都可對應至多個輸出接腳,對於多個接腳需要相同計時器PWM等狀況而言,相當實用。連接埠對應也可避免將一個系列的裝置移轉到其他系列時出現接腳相容性方面的問題。
|
多種軟硬體有助縮短上市時程
開始使用MSP430 USB微控制器相當簡單。MSP430F552x樣品套件包含八十接腳MSP-TS430目標電路板(#MSP-TS430PN80-USB)、USB支援及矽晶片樣品。透過MSP430卓越的工具系列及全面性USB支援套件,已經熟悉MSP430的開發人員很容易地就能將USB加入應用中。此外,TI的協力廠商提供多種軟硬體,可供加速開發和縮短上市時程。開發人員可選擇三個系列的USB型MSP430微控制器,每一個都有彈性的配置及選項,可符合各種嵌入式應用的需求:
‧ |
|
|
F552x/F551x提供64K~128KB快閃記憶體與4K~8KB(+2KB)RAM,以及比較器B功能。F552x\F551x裝置目前已提供樣品。
|
‧ |
|
|
F563x/F663x可說是目前功能最多樣化的整合式MSP430裝置。此裝置內建128K~256KB快閃記憶體及16KB(+2KB)RAM,具有六個DMA通道、RTC備份模式,能使RTC在沒有Vcc的情況下以低於1微安培運作,以及其他多個整合式周邊。
|
‧ |
|
|
F550x提供符合成本效益的USB,內建16K~32KB快閃記憶體與4KB+2KB的RAM,以及10位元ADC與比較器B功能。F550x預計於2010年第一季初期提供樣品。
|
TI的全新MSP430 USB微控制器可降低系統成本、提供有助於延長電池使用時間的絕佳電源效率、加速執行,且使用相當簡便。除了能夠讓開發人員專注於應用,毋須另外處理USB技術之外,這些全新的控制器也整合多個進階周邊及模組,這些周邊及模組可提升效能、提升功耗,並減少所需元件數。TI全面性的軟硬體支援能將USB學習時間從數週縮短為數小時,使得將USB加入多種嵌入式應用符合成本效益且簡便。表1為各種裝置類別的比較。
(本文作者Bhargavi Nisarga與Keith Quiring為TI應用工程師、Les Taylor為TI MSP430產品行銷經理)