之前我們曾介紹Microchip USB智能集線器產品。之所以稱為“智能”,是因為它不是單純的USB集線器,它還內含多種功能的USB橋接器,可做即時周邊控制與存取,可以做實時的上游埠與下游埠的角色互換;有內含的一次性可編程記憶體(One-Time-Programable Memory,以下簡稱OTP),可以讓設計者自行變更Microchip USB 智能集線器的預設內存來符合不管是自身設計或來自於客戶的實際使用需求,例如?預設Microchip USB 智能集線器產品的VID (Vendor ID)和PID(Product ID)修改為自己或客戶的VID和PID來取得USB協會的產品認證,或是高速(High-speed)USB(USB 2.0)眼圖無法通過測試需要調整USB 訊號的驅動能力,甚至要透過Microchip專業技術人員協助來做更高端深度的配置變更,都可以藉由修改預設配置並儲存於內含的OTP中來達成,進而取代傳統上或其他USB集線器製造商外掛電子抹除式可複寫唯讀記憶體(EEPROM)或快閃記憶體(Flash)的需要,並節省整個設計的成本。要將組態配置檔燒錄到OTP,或自行產生組態配置檔,就必須使用Microchip的MPLAB® Connect Configurator配置和編程工具軟體。
透過本文最後的超連結可下載MPLAB Connect Configurator的軟體壓縮包。 解壓縮後可以看到有四個子目錄,分別是Drivers、MPLABConnect_CLI、 MPLABConnect_DLL和MPLABConnect_GUI,及一個發行注釋檔案。本文要介紹的GUI(Graphic User Interface)就在MPLABConnect_GUI子目錄中。GUI是MPLAB Connect Configurator圖示化使用者友善介面,不須安裝便可直接執行的一種配置和編程工具軟體,不僅能配合Microchip USB智能集線器,也可用於Microchip USB及PCIe®介面的乙太網產品以及PCIe周邊橋接器產品,只要產品有內含OTP,但是目前GUI只支援Microsoft Windows® 64 bit作業系統。
GUI可以離線(Off-line)產生OTP的配置檔,也可以即時對已被系統枚舉的在線(On-line)之GUI可支援的Microchip產品進行重新組態及OTP燒錄。接下來本文就以Microchip USB4715智能集線器為例,向讀者介紹幾個常用的功能,包括如何以離線方式產生組態檔進而於在線時燒錄此組態檔,以及在線變更組態配置並燒錄到OTP等,而要變更的組態則以改變VID及PID為例。接著就讓我們來執行MPLABConnect_GUI子目錄中的MPLABConnect.exe執行檔,並搭配圖示來說明各個功能的步驟。
執行MPLABConnect.exe後,在產品選擇頁面選擇“USB471x Hub”並以滑鼠左鍵點選(以下提到的點選皆是用滑鼠左鍵)“Offline(Device Detached)”,然後在“Select SKU” 下拉選單選擇USB4715就可以進入組態編輯頁面進行離線執行。讀者可以參考圖1所示。
接著,我們要開始為我們自己或客戶更改VID 及PID,以便將產品送USB協會做認證。在“Basic Features”功能頁面點選“Device Identification”可以看到Microchip的0x0424在“USB Vendor ID”及USB4715的0x4715在“USB Product ID” 。假設我們要改的VID是ABCD而PID是1234,將值填入相對應的欄位後,變更的欄位會顯示紅色外框,然後到本頁面正上方“Save Configuration File”點選“選擇檔案”,再到存放檔案(附檔名為cfg,我們用4715_Demo.cfg為例)的子目錄選取檔案並點選Save,在連續對兩個彈出的訊息框點選“OK”後,自行修改的組態檔就成功被建立。讀者可以參考圖2所示。
至於在線(On-line)執行,請讀者自行參考離線執行。只需要把“Offline(Device Detached)”改成選“Online(Device Attached)”,就可以進入組態編輯頁面。我們的重點是在線變更組態配置並更新OTP。同樣以更改VID 及PID為例,在“Basic Features”功能頁面點選“Device Identification”,並點選“Hub Identification”將VID和PID變更後,再點選Apply changes。最後再對彈出的訊息框點選“OK”,USB4715將重新被GUI枚舉,您可以看到VID 及PID已經改變成剛剛要更改的值。讀者可以參考圖3所示。
最後,我們會在線將離線產生的組態配置檔燒錄到OTP。點選右上方的“Program Page”進入燒錄頁面,因為可能不僅有一個Microchip的產品被MPLAB Connect Configurator GUI工具枚舉,所以請先在“Select USB Hub”下拉選單確認要燒錄的產品(本文舉例的USB4715),然後點選”選擇檔案”選取您要燒錄的組態配置檔(在此我們選的是之前用離線方式產生的4715_Demo.cfg)。您將會在“Status Message”訊息框看見所選擇的檔案大小。之後,若您只要燒錄一個USB4715則點選Program Once,燒錄完畢後USB4715將被GUI重新枚舉;若您需要燒錄多個,則點選Mass Program,然後按照GUI的指示在燒錄完一個後接著燒錄下一個。讀者可以參考圖4所示。
因限於篇幅,筆者無法將MPLAB Connect Configurator GUI工具所有強大的功能完整地向讀者們盡皆描述。往後若有機會且讀者們有興趣,筆者可以再說明其它的功能。最後要注意的是,OTP大小是有限制的,不同的產品OTP大小也有差異。
歡迎造訪以下Microchip超連結或掃瞄QR碼以下載Microchip MPLAB Connect Configurator:
( https://www.microchip.com/en-us/tools-resources/configure/mplab-connect-configurator )
另外順道一提的是,在本文中所提及的USB智能集線器、USB及PCIe介面的乙太網產品以及PCIe周邊橋接器產品都是Microchip可以提供的總體系統解決方案。讀者也可造訪以下Microchip產品網頁或掃瞄QR碼,或直接洽詢您的Microchip業務窗口,以獲致您系統需求的最佳解決方案。
( https://www.microchip.com/products )
本文作者為:Microchip主任應用工程師 薛志浩