Qwiic 概述與常見問題解答

Qwiic是什麼?

Qwiic 是微控制器和相關硬體的便利互連生態系統。典型應用採用配備 Qwiic 的微控制器以及一個或多個菊花鏈分線板。Qwiic 的用途反映在名稱中,即「Qwick」和內部積體電路(I2C)兩個字的組合。Qwiic 突破生態系統的範圍從簡單的按鈕介面到環境感測器再到 GPS 接收器。

SparkfunRedboard DEV-15123(如圖 1 所示)是一款具有代表性的配備 Qwiic 的微控制器,採用 Microchip (Atmel) ATMega328。 4 腳 JST 連接器位於 PCB 的右上角。

此常見問題解答是由工程師為學生編寫的。內容按經驗程度進行組織,從 DigiKey 物流開始,逐漸發展到資料損壞等高階主題。最後,它確定了流行的 Qwiic 替代品,這些替代品保留了無試驗電路板的優點。

圖 1:Qwiic 微控制器。 Qwiic JST 連接器位於 PCB 的右上角。

在哪裡可以找到 Qwiic 電纜?

Digikey 提供各種電纜。我們建議盡可能使用短電纜,但也可提供最長 1.6 英尺(500mm)的電纜

您可能對 SparkFun Qwiic 電纜套件感興趣,其中包括如圖 2 所示的各種電纜。

圖 2:SparkFun KIT-15081 中包含的 Qwiic 電纜。

在哪裡可以購買 Qwiic 微控制器和分線板?

DigiKey 提供來自 Qwiic 生態系統的大量設備。首先找到擴充板、子卡類別。接下來,在「平台」參數搜尋引擎中輸入「qwiic」,如圖 3 所示。

類似的流程可用於尋找 DigiKey 嵌入式 MCU、DSP 類別的產品。

圖 3:使用 DigiKey 的參數搜尋引擎選擇 Qwiic 元件。

Qwiic 網路可以連接多少個設備(節點)?最長電纜是多少?

  • 即時效能:各個模組之間的通訊需要時間。當安裝許多模組時,這種延遲可能會變得非常嚴重。這表現為系統響應緩慢。您的微控制器或網路可能沒有必要的資源來跟上現實世界的限制。

  • 網路限制:在本文後段將描述的,隨著節點數量的增加,網路速度和對幹擾的敏感度會不被期望地增加。

  • 電源限制:微控制器為所有 Qwiic 模組提供電源。許多模組可能會使微控制器板調節器過載,導致意外的熱重置甚至損壞設備。

技術提示:最好為您的 Qwiic 網路建立最壞情況的功率預算。我們計算所有模組電流的總和,然後確保該電流小於微控制器所能提供的電流。良好的工程實務包括降額系數,以減輕意外操作和高溫的影響。合理的起點是將電流保持在微控制器 PCB 額定電流的 50% 以下。

技術提示:新手程式設計師在程式碼中實現延遲時經常會遇到問題。例如,許多人會使用Arduino 的 delay() 函數或其特定於平台的等效函數。這是不想要的,因為它會有效地停止所有活動,從而削弱微控制器。應實施非區塊技術,因為它們允許微控制器在等待延遲完成的同時繼續執行網路通訊等任務。

如果我的微控制器板本身不支援 Qwiic,如何加上 Qwiic?

Qwuiic 系統基於大多數微控制器都支援的 I2C。在硬體級別,您將需要一個適配器板,例如 SparkFun 的 DEV-14495。軟體可能更複雜,因為您需要配置並連接微控制器的 I2C 硬體。在某些情況下,這就像使用 Arduino Wire 庫一樣簡單。在其他情況下,您可能能夠使用硬體描述語言 (HAL) 甚至直接控制微控制器的特殊功能暫存器 (SFR)。

圖 4:SparkFun DEV-14495 Qwiic 適配器板。

技術提示:許多微控制器都具有多個 I2C 週邊設備。您可以實施兩個 Qwiic 網路來容納更多設備並縮短總電纜長度。SparkFun DEV-14495 轉接器可讓您相對輕鬆地完成此操作。

Qwiic 有什麼優勢?

與傳統方法相比,Qwiic 透過在單一連接器上提供電源和通信,最大限度地降低了佈線複雜性。與傳統電路板相比,使用 Qwiic 系統只需一小部分時間。這是透過 4 腳 JST 連接器實現的,該連接器包括用於以下用途的電線:

  • 3.3VDC
  • 接地(GND)
  • SDA:串列數據
  • SCL:串列時脈

Qwiic 的優勢也延伸到了軟體上。大多數製造商都為 Qwiic 板提供庫。Arduino Plug and Make Kit
就是一個例子,它具有一系列配備 Qwiic 的 Modulino 板,如圖 5 所示。

圖 5:Arduino 即插即用套件,其中安裝了 4 個 Qwiic Modulino 板。

Qwiic 有哪些限制

Qwiic 限制反映了底層 I2C 通訊協定。這種潛在的依賴性決定了資料傳輸速度、佈線長度以及網路上允許的設備總數。

訊號速度

回想一下,I2C 最初是在 40 多年前設計的,作為板載資訊傳遞的簡化方法。它對具有相應上拉電阻的開漏和開集電極電路的依賴使得訊號轉換相對於互補驅動器來說較慢。

隨著附加設備的增加,情況會惡化。每個設備的電容加上電纜電容都會減慢訊號轉換速度。這是一個已知問題,因此 Qwiic 時脈訊號經常被降低到 100kHz 頻率。

訊號損壞

帶有 I2C 訊號的 Qwiic 系統容易受到干擾。例如,在馬達電源線旁邊運行 Qwiic 電纜會導致資料損壞,因為馬達電纜的磁能會滲入通訊電纜。確保隔離通訊電纜和電源電纜。此外,以直角交叉電纜可最大限度地減少與耦合磁場相關的干擾。

技術提示:當預期訊號損壞時,請考慮使用 RS-422/485。雙絞線和平衡訊號可以長距離運行,並具有良好的雜訊抑制能力。對於關鍵應用,請考慮使用光纖連接。

頻寬

在本文中,術語「頻寬」是指可以在 Qwiic 網路上共享的資料量。每個網路設備都會消耗一定的時間。例如,在圖 6 中,我們可以檢查用於與 Arduino Pixels Modulino 通訊的框架的開始部分。使用 100kHz 時脈時,傳輸該訊框架大約需要 3ms。就其本身而言,這並不重要。然而,許多此類設備可能會導致即時系統運作緩慢。

image

圖 6:由 show( ) 方法啟動的發往 Arduino Pixels 模組的 I2C 框架部分 此框架以預設 Pixels 0x6C 位址開始。

Qwiic 的替代品有哪些?

之前,我們將 Qwiic 定義為一個快速、簡單的平台,我們可以從中探索各種微控制器相關設備的分線板。我們也基於底層 I2C 技術確定了 Qwiic 系統的一些限制。

考慮到所有事情;速度是 Qwiic 系統的限制。因此,Qwiic 分線板上的設備的範圍和性能受到限制。例如,我們當然可以找到 I2C 類比數位轉換器 (ADC)。但是,它不會是高速設備。與此相比,串列週邊設備 (SPI) ADC 的運作速度可能快 25 到 100 倍。為了提高效能,可以使用平行輸出 ADC。如果適當注意訊號終止,我們可以獲得另外 25 到 100 倍的改進。

技術提示:根據經驗,I2C 用於許多設備之間的慢速通訊。SPI 用於少數(最好是一個)設備的快速通訊。典型的 I2C 時脈在 100kHz 範圍內,而 SPI 可以在 10MHz 下運作。 SPI 也更快,因為它沒有 I2C 的位址在上面的。

Qwiic 相鄰替代方案

有幾種不同的 Qwiic 鄰近系統,包括 Gravity (DFRobot)、Grove (Seeed Studio) 和 STEMMA (Adafruit)。這些系統在速度方面沒有顯著差異,因為它們都使用 I2C 介面;它們在性能上與 Qwiic 相鄰。這些系統的描述超出了本文的範圍。

MikroBUS 替代方案

MikroElektronika MikroBUS 具有 8 腳連接器,具有明顯的速度優勢。雖然個別分線板可能仍使用 I2C,但製造商也可能使用更快的 SPI 介面。例如,MikroElektronikaADC 23 CLICK 採用 Texas InstrumentsADS127L11,如圖 7 所示。

圖 7:具有 MikroElektronika MikroBUS 8 引腳總線的 MikroElektronika ADC 23 CLICK。

Pmod 替代方案

Digilent Pmod 系統提供易於使用的無試驗電路板分線板。它們還具有依賴設備的 I2C 和 SPI 介面組合。如圖 8 所示的 DigilentPmodAD5 是一個代表性元件。這是 Analog DevicesAD7193 的分線板。

圖 8:具有 6 個引腳 Pmod 連接的 Digilent PmodAD5。

Feather 和 FeatherWing 的替代品

Adafruit Feather 產品提供緊湊的可堆疊組件。代表性的 FeatherWing 如圖 9 所示。此 Adafruit3231 具有適用於 RF SolutionsRFM95W LoRa 數據機的 SPI 介面。

圖 9:Adafruit 3231 Featherwing LoRa 數據機。該模組具有 SPI 連接。

其他

我們的名單當然可以擴大。然而,當我們考慮到「簡單」和「初學者」的規定時,前面提到的設備是最受歡迎的。例如,我們可以談論現場可編程閘陣列 (FPGA) 和相關的 FPGA 夾層卡高引腳數(FMC HPC)。但是,從複雜性和成本角度來看,此類設備不再屬於初學者類別。

完結前的感想

Qwiic 生態系統提供了一種易於使用的無試驗電路板測試驅動各種微控制器和微控制器配件的方法。大量的支援軟體庫擴展了易用性。這些屬性使新手程式設計師能夠快速啟動新專案。

這種流行的系統存在一些局限性,與對已有 40 年歷史的 I2C 協議的潛在依賴有關。高級用戶可能希望擴展到更快的基於 SPI 的技術,例如 MikroBUS、Pmod 和 Feather。或者,一些學生(是指電子工程)可以從試驗電路板構建和他們自己的 PCB 設計中受益。

如果您覺得此資訊有用,請按讚。

此外,您可以透過在下面的評論部分留言,或發表您的 Qwiic 相關問題來幫助我們擴展此常見問題。

相關資訊

請點擊以下連結以取得相關且有用的資訊: