利用RS232/SPI傳輸介面 USB主控端功能設計簡化

2008-05-12
通用序列匯流排(Universal Serial Bus, USB)是一項極為成功的技術,為個人電腦(PC)及周邊設備提供通訊交流,在全世界已具備數百萬計的使用節點(Node)。隨處可見的隨身碟是最令人印象深刻的USB裝置。根據最新資料顯示,目前已可在鑰匙圈等纖巧但堅固的設計上驅動32GB資料,在終端售價上也有突破;可容納8GB的小型隨身碟,零售價可低至30美元,而2GB容量的隨身碟,售價更可降到10美元以下。
在可預見的未來,先進技術將確保儲存容量逐年提升,同時每GB的成本也會逐年降低;加上其可離線分享檔案、儲存備份以及便於攜帶文件檔案等優勢,使USB隨身碟成為儲存媒介的最佳選擇。因此,如何設計讓PC周邊易於隨插即用的實用性USB裝置,便成了重要課題。  

PC技術簡化升級及監控作業  

資料來源:作者整理
圖1 將USB原型設計加入感測器,可記錄溫度、溼度和週期等,並監控測試的結果。
以可程序化的烤爐為例,有位速食業專用工業烤爐供應商的客戶推出了季節性特餐的巡迴計畫,並在其銷售區域進行密集的廣告。通常餐廳員工將準備好的餐點放入烤爐中,在鍵盤上輸入餐點代碼,即可為這個特定的餐點啟動一連串微波及加熱過程。每當推出一款新特餐時,技術人員必須使用鍵盤及單線介面,透過輸入一連串新指令後才能完成設定,使技術人員每到一地就必須重覆進行設定,既浪費時間且沒有效率。  

目前雖已有透過網路下載的實驗,但其有連線及成本上的問題,特別是在不同據點上擁有數個烤爐的營業地點尤為明顯;它可能不具備既有的網路連線系統,或是需要高密度的線路架設。但倘若該客戶安裝內建USB介面的新烤爐,餐廳經理或員工可從USB隨身碟下載新的加熱程序,不須技術人員親自到場操作。USB隨身碟的作用,並不只是用於輸入資料到應用設備中而已,它同樣也可從應用設備中取得資訊;還可下載數據至隨身碟內,以便之後在PC上進行分析(圖1)。  

以宏觀角度設計USB主控介面  

USB是專為使用方便性而設計的,但是直到現在為止,由於USB協定複雜難懂,故在應用設備中加入USB主控端有其技術上的難度。為了協助克服此難題,英商飛特帝亞(Future Technology Devices International, FTDI)開發出Vinculum USB平台,為一特定應用積體電路(ASIC),可利用RS232或串列周邊介面(SPI)此類簡單且容易理解的傳輸介面,將USB介面連接至微控制器(MCU)。  

Vinculum源自拉丁語,其意為綑綁或聯繫,就像Vinculum將USB周邊設備、主控器及傳統介面全部連結般。而在數學運算中,一個橫跨兩個或多個項目之間的水平橫槓符號,顯示其具備相同意義,也可稱作Vinculum。使用飛特帝亞的方式,由於已將所有必要元件整合在一個單晶片中,將使加入USB主控制器變得非常簡單。為使其變得更容易,飛特帝亞開發內含Vinculum的兩款嵌入式模組--VDRIVE及VMISIC;兩者均只需四個連接到應用控制單元的訊號接腳,其中VMISIC模組還包括一個MP3解碼器及音頻輸出線路。  

自發表Vinculum後,飛特帝亞更與許多公司合作為USB隨身碟評估新的應用領域,這些合作多數於不同程度的保密環境下進行,因為這些公司正尋求運用USB來獲取競爭優勢;其中一個有趣的領域,是在暖氣通風及冷氣(HVAC)應用上。如同烤爐的例子一樣,在可能須要回應系統使用者的習慣改變或增加新設備時,USB隨身碟可用來下載新程式資料至控制面板上。此外,它可針對長時間操作需求擷取監控數據;根據隨身碟的容量,它還可進行離線分析以提升系統效能。  

投幣式應用也可以USB隨身碟作為韌體升級工具,以增加新功能、在配置機器時增加新的產品選項、並且在詐欺者頻頻出現的環境中強化硬幣感應器的技術。使用VMUSIC模組取代視覺介面,可讓產品在不同的階段用語音指示操作人員進行修改及升級。  

USB是實現產品差異化的良策  

增加USB是提供產品差異性的新方法,可透過USB本身以及升級來增加新特性的可能性。目前其仍處於初期開發階段,當研發者的技術愈純熟,將會有更新、更有趣的應用產生,而飛特帝亞正提供相關工具,讓加入這項技術變得盡可能簡單。  

USB是一個提供使用者將周邊設備連接至主機的簡單方法,例如新增印表機至PC。目前一系列USB標準由USB建置論壇(USB Implementers Forum)負責制定及管理,USB2.0或高速USB是目前的核心標準,最高可在480Mbit/s的線路運作;但一般資料傳輸下,12Mbit/s已足夠應用,包括初始的USB標準(USB1.1)或甚至是1.5Mbit/s的低速節點。另外則是針對無線應用(無線USB)及因應可攜式設備需求--USB On The Go(即USB OTG,為USB2.0的補充技術),以USB2.0為基礎的標準。  

有線USB擁有主控端星狀架構,每一個星狀的延伸點也可成為星狀本身,最後連結到周邊設備;透過USB OTG,相關裝置可作為主控端及周邊設備端。USB主控制器是與所有USB周邊設備溝通的基本要素,由USB主控制器介面規格定義,而USB類別規格包含相關USB周邊的所選類別群組,例如鍵盤、滑鼠、控制桿等人機介面裝置(HID)。  

如同TCP/IP通訊協定,USB軟體亦是層層堆疊的設計;最底層為與硬體連接的介面,最上層為應用設備或作業系統的介面。USB主機的堆疊組成通常最底層是主機控制器,中間服務層負責堆疊層操作元件的連接及斷開、裝置初始化、驅動程式的選擇及資源管理功能,而最上層則包含針對不同類別的裝置提供的不同驅動程式,使裝置能用於作業系統及相關應用中。  

Vinculum可支援多種介面及開發套件  

Vinculum晶片包括一個8位元處理器、兩個DMA(直接記憶體位址)專用引擎,及一個操作檔案功能的32位元協同處理器,同時將常用的USB裝置類別堆疊整合在內;加上對USB隨身碟FAT12/ 16/32的應用支援,使產品設計者可免除開發、支援這些複雜且耗時的堆疊層。這項裝置配備高階組合語言所開發的無授權費二進位韌體,USB周邊設備控管及資料移轉則使用類似DOS的簡單高階指令。

資料來源:作者整理
圖 2 Vinculum嵌入式USB主控制器架構

連接應用MCU的Vinculum介面可以是傳統的通用非同步收發傳輸器(UART)、SPI或是先進先出(FIFO)。透過全速USB2.0(包括USB1.1及低速USB),Vinculum可控制兩個USB介面,如圖2所示;每個介面可被配置成主控端(Host)或被動端(Slave),取決於所選擇的韌體而定。Vinculum裝置可由UART介面來燒錄韌體,且可從UART介面或隨身碟進行韌體升級。

點圖放大
資料來源:作者整理
圖3 電路圖顯示VDRIVE模組可輕鬆介接至應用微控制器

資料來源:作者整理
圖4 飛特帝亞的VMUSIC2模組

Vinculum的支援套件有開發板、包含數據紀錄模組的參考設計,以及VDRIVE及VMUSIC介面模組。VDRIVE是在應用設備上加入USB隨身碟介面的一種簡單方法,為一容易使用的嵌入式模組,擁有單一USB插槽及表面LED流量指示器;它可透過八個接腳連結器介接,具備四個訊號接腳,另有電壓面(PWR)/接地面(GND)以及可從低功耗睡眠模式中的喚醒功能(圖3)。

至於VMUSIC介面模組是一個較大的嵌入式模組,擁有從USB隨身碟直接播放MP3錄音及其他音樂格式的能力。在VDRIVE功能外,VMUSIC模組也可外接音響及3.5毫米的立體聲耳機插槽,如圖4所示。  

(本文作者為飛特帝亞執行長)

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!