Global Sources
電子工程專輯
 
電子工程專輯 > 嵌入式技術
 
 
嵌入式技術  

良好運用微控制器軟體支援簡化USB OTG設計

上網時間: 2007年06月27日     打印版  Bookmark and Share  字型大小:  

關鍵字:微控制器  microcontroller  CyanIDE 

本文將以賽恩科技(Cyan Technology)的USB核心支援OTG模式" target=_blank>eCOG1X微控制器為例,探討在搭配使用CyanIDE圖形化配置工具時所帶來的易用性。eCOG1X微控制器具備易用和零組件數量少的特性,在驅動週邊設備時只需要很少的定製軟體控制,因此終端設備僅需使用較小容量的記憶體,且上市時間較快,功耗也相對較低。

USB標準是最近幾年來獲得巨大成功的標準之一。高數據率和真正的即插即用功能,使其成為PC週邊設備的一種必然選擇,並順利取代傳統的標準串列埠和並列埠。但方便性的代價是軟體和硬體的複雜度增加。

為了滿足USB相容系統的市場需求,許多微控制器在晶片上整合了USB協議控制器。但絕大多數只是將USB作為一種週邊設備,需依賴外部實體設備進行作業。絕大部份微控制器為USB週邊設備提供軟體支援,儘管還不十分成熟,但相當容易使用,也容易與現有設計整合。

以賽恩的eCOG1X系列微控制為例,該元件的USB模組除了滿足PC週邊設備要求外,還能支援主機模式和OTG工作模式。OTG是USB2.0規格的擴展,它允許系統作為主機(‘類型A’),或作為週邊設備(‘類型B’),且不需要獨立的硬體介面就能區分這兩種類型。OTG設備採用小型的A/B插座,允許實現mini-A和mini-B插入連接。

eCOG1X能夠檢測並確定其連接處於主機模式還是週邊設備模式,具體取決於插入的是哪個插座。ID接腳低電平表示主機模式,高電平表示週邊設備模式。作業是動態的,重新配置不僅可透過重新插入相應的連接器類型來初始化,而且當週邊設備請求作為主機時,還可以在軟體控制下來回切換。OTG不僅普遍應用在PDA中,一些工業應用也對其展現出了高度興趣,如數據記錄和倉庫控制系統等。

USB OTG主要適用於將手持設備或手機在不同時間連接到某處的主機和週邊設備上,如印表機,快閃碟和遙控數據監控器等。在這些應用中,單一標準介面連接可適用於所有功能,無需使用多種硬體介面。

eCOG1X結構

圖1所示為eCOG1X USB週邊設備的結構圖。一個內建的實體模組被整合在晶片上,它支援低速(1.5Mbps)和全速(12Mbps)兩種模式。此外,如果需要高速(480Mbps)作業,可使用ULPI介面連接外部PHY。這種組合使得低速或全速工作模式的eCOG1X可作為無需外部元件的週邊設備,而其它工作模式要求的外部元件數量也很少。

圖1:eCOG1X USB週邊設備結構圖。
圖1:eCOG1X USB週邊設備結構圖。

就硬體來看,eCOG1X USB週邊設備支援USB規格轉移方法和控制轉移、中斷、數據區塊(bulk)和同步,可作為普通的USB設備使用,或能方便地連接到鍵盤、鍵盤驅動和音效卡等裝置中。

USB包括4個獨立的雙向端點,以及默認的控制端點(端點0)。USB核心採用4K的內部SRAM,並透過嵌入式記憶體管理單元(MMU)實現映射,可作為控制和狀態暫存器與端點緩衝器。另外還有2個雙緩衝和1個單緩衝數據端點可供使用,容量高達1k位元組。雙緩衝在週邊設備發送數據時允許緩衝器被填充。該組合使得eCOG1X可作為USB複合設備。

端點緩衝記憶體中的數據存取是透過一個位於eCOG1X USB核心中的從FIFO介面實現。透過eCOG1X週邊設備暫存器,可直接存取FIFO。同樣,雙通道的DMA控制器適用於實現內部SRAM的高速、全雙工數據傳輸。這一性能是透過將FIFO暫存器連接到端點緩衝器和DMA控制器通道所實現。

圖2 eCOG1X USB庫層次結構。
<p>
圖2 eCOG1X USB庫層次結構。

軟體支援

賽恩為USB週邊設備提供的軟體支援能讓用戶無需深入瞭解USB協議和協議堆疊。在設計初期,可使用USB庫開發程式,或可將USB功能加入現有程式中。這種軟體支援能在不同層次上對對USB庫提供支援,主要功能包括:

*設立

*數據傳送處理器─用於FIFO和DMA

*中斷處理器

*為必須配置的設備功能提供外卦程式

目前,下列USB設備已有相應的外卦驅動程式:

*人機介面設備(HID):鍵盤(主機和週邊設備)

*大量儲存設備(MSD):具有FAT的快閃碟(主機)

*音訊:外部音效卡/耳機(週邊設備)

在CyanIDE環境中,USB週邊設備可被拖放進所選變量的軌跡圖中。支援所選設備的軟體庫將被自動加入到設計專案中,留給用戶的工作量很少。利用CyanIDE支援視窗可以很容易找到USB核心驅動器、所有週邊設備驅動器和庫的用戶支援文件。文件中還提供用戶API的描述,可快速實現韌體原型。

圖3為部份軟體實例。這些實例顯示,利用支援FAT16/32的CyanIDE MSD主機庫,以獲取插入eCOG1X中之USB快閃碟的目錄內容是相當簡單的。CyanIDE增加了USB大量儲存主機方面的外卦程式,FAT庫則提供了磁碟讀寫所需的所有必要程式範例。

圖3 連接MSD設備所需的USB週邊設備程式碼。
<p>
圖3 連接MSD設備所需的USB週邊設備程式碼。

除USB之外,eCOG1X控制器還包括具有10/100MB的乙太網路MAC、雙12位元ADC,以及雙12位元DAC的其它不同版本。所有元件的週邊設備都包括32x4 LCD、多工USART/SPI/I?C、6通道馬達控制PWM和雙智慧卡介面。至於使用哪些週邊設備,如何配置以及連接哪些接腳等,均可在CyanIDE中輕易地設定。

本文小結

賽恩科技的eCOG1X USB週邊設備提供了覆蓋週邊設備、主機和OTG功能等性能。硬體模組具有CPU獨立功能,並整合了對內部端點緩衝器的高速DMA存取。該功能大幅減少了執行設備所需的程式碼數量。另外,賽恩科技還免費提供支援軟體庫,可支援各種USB設備類型和其他通用週邊設備。這些庫能讓用戶避免執行所選設備所需的複雜、低層次USB協議堆疊,並使用易於理解和便於整合的高階語言。

附錄A-縮寫詞匯表
<p>
附錄A-縮寫詞匯表

作者:Clive Tilbury

產品市場經理

Tony Ward

工程顧問

賽恩科技




投票數:   加入我的最愛
我來評論 - 良好運用微控制器軟體支援簡化USB OTG...
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首