USB連接在PC和消費者市場中無處不在,設計團隊在一系列嵌入式應用程序中工作以將USB添加到設計中有充分的理由。嵌入式設計可以充分利用使USB成為通用即插即用互連的巨大努力。此外,該接口還提供通過單根電纜分配電力和處理數據的能力 - 這是大多數傳統串行接口所缺乏的功能。讓我們考慮可用于為基于MCU的設計以及與MCU一起使用的外圍產品添加USB支持的不同選項。
盡管如此,Microchip PIC10和PIC12 8位產品線中的許多低端MCU都缺乏USB支持,但包括其他串行接口,如SPI(串行外設接口)。此外,設計團隊可以選擇對設計進行分區,包括在主系統中使用支持USB的MCU,同時在位于USB電纜另一端的目標設備中添加模塊化外設功能,以方便地提供電源和數據。
許多IC公司都提供USB控制器和橋接IC,可以方便地為系統添加USB連接。這些IC在它們支持的串行接口類型和集成在芯片上的其他功能(如存儲器或I/O線)方面各不相同。
USB轉UART橋接器最基本的橋接IC是一個簡單的USB轉UART橋接器,例如Silicon Labs的CP21xx系列產品,包括CP2101,CP2102,CP2103,CP2104,CP2105和CP2110 IC。典型實現如圖1所示。當與外部收發器一起使用時,橋接器直接支持RS-232接口和其他選項。例如,如果您有一個依賴于串行通信的傳統MCU設備,CP21xx系列可以輕松地將設計轉換為USB連接,并且IC支持虛擬COM端口(VCP)功能。
圖1:Silicon Labs CP21xx系列USB轉UART橋接IC允許設計團隊在具有傳統串行接口的外設中添加USB支持。
家庭成員的差異歸結為I/O功能和內存。例如,所有家庭成員都包括可用于存儲USB特定數據的EEPROM,例如供應商ID甚至電源描述符。內存配置從296到1024位不等。
USB供應商IC,設備類型和其他數據不必在專用嵌入式應用程序中使用,但如果設備設計旨在用于USB主機的一般用途,則應使用該標準符合標準。這些IC提供從CP2101/02上的0個通用I/O線到CP2110上的10個I/O線。您可以使用這些I/O線來滿足狀態和控制需求。
通過SPI等接口實現的USB連接可以支持更高的數據速率。包括Maxim和Microchip在內的許多公司都有基于SPI的USB IC。幾乎所有較新的MCU都包含SPI接口。
主機或目標
例如,Maxim提供MAX3420E和MAX3421E USB控制器,可為任何具有SPI端口的處理器系統增加USB支持。這些IC使用SPI時鐘,最高可達26 MHz。 SPI實現是從模式接口,這意味著USB控制器需要MCU中的SPI主控制器或系統中的其他處理器。
基于MAX3420E的簡單USB總線供電小部件只需要處理器,以及一個從USB電纜獲得3.3 V VDD電源的穩壓器。 MAX3420E IC僅用于USB外設或目標器件應用。集成的USB全速收發器支持12 Mbit/s速率。該IC支持三線和四線SPI實現。它還包括四個通用I/O線。
對于USB主機實現,Maxim提供MAX3421E。該IC包括8個通用I/O線。 I/O線可用于多種用途,但在某些情況下,允許主機MCU基本上回收MCU中不可用的I/O線,因為引腳專用于SPI鏈路。另請注意,Maxim的兩個USB IC都包含內部信號電平轉換器,因此SPI鏈路可以在1.4到3.6 V的電壓范圍內工作。
從模式SPI
同時,Microchip有幾個USB-中心IC支持其在MCU領域的工作,包括MCP2200 USB轉UART IC。 Microchip的最新產品完全不同,因為MCP2210 USB到SPI IC實現了SPI主模式鏈路。圖2描繪了IC的框圖。它集成了256個字節的EEPROM。
圖2:Microchip新推出的MCP2100 USB控制器IC包括一個主模式SPI實現,可與總線供電的目標器件中的傳感器,數據轉換器和其他外設結合使用。
該IC可用于與MCU連接,但也可用于直接控制具有各種外設功能的基于SPI的IC。例如,您可以使用IC設計目標器件中沒有MCU的支持USB的數據采集模塊。這樣的模塊可以部署基于MCU的控制系統,甚至可以部署在PC上。
考慮USB供電數據采集模塊的可能性。例如,Microchip提供基于SPI的MCP3204 A/D轉換器,可以作為MCP2100控制器的從器件進行部署。該四通道數據轉換器將允許USB主機通過USB電纜捕獲數據。
Microchip提供了許多其他基于SPI的外設,這些外設可以組合在這樣的目標器件中。 MCP2100 USB控制器集成了9條通用I/O線。使用基于SPI的MCP23S08 I/O端口擴展器IC可以添加8條額外的線路。如果您想了解有關該主題的更多信息,我們在最近的TechZone文章(“I/O端口擴展器在基于MCU的設計中提供靈活性”)中提供了端口擴展器,這些文章可在Digi-Key庫中找到。
您還可以為基于MCP2210的設備添加內存和傳感器功能。 25LC02 SPI EEPROM集成了2k位存儲器。傳感器選項包括基于SPI的TC77溫度傳感器。 Microchip在MCP2100中集成了USB HID(人工輸入器件)級支持,并提供可以快速啟動器件設計過程的驅動器。
選擇是你的
USB支持可以證明是所有類型的嵌入式應用程序中的一個有價值的功能。該接口可以消除在設備中單獨包含電源的需要。您可以輕松地將USB主機功能添加到基于MCU的系統中。基于USB的目標設備可以與基于MCU的主機或PC同樣良好地工作。雖然支持MCU的MCU可能是您在面對USB設計時的首選,但專用控制器IC可能是最佳選擇,尤其是在您將舊設備改裝為USB或者您的設計需要低成本小型MCU的情況下
-
傳感器
+關注
關注
2552文章
51366瀏覽量
755734 -
轉換器
+關注
關注
27文章
8741瀏覽量
147728 -
usb
+關注
關注
60文章
7978瀏覽量
265549
發布評論請先 登錄
相關推薦
評論