簡單的USB電源測試儀基於ATTINY25/45/85和INA219。該設備測量電壓,電流,功率,能量,容量,並在OLED屏幕上顯示值。您可以通過按“設置”按鈕在不同的屏幕之間切換。
該設備配備了用於輸入的USB-A插頭和輸出的USB-A插座,因此可以在電源和消費者之間插入。 D+和D-通過,以便消費者可以協商充電協議。
INA219用於測量電壓和電流。 INA219是具有I²C兼容接口的當前分流器和電源監視器。該設備可以通過可編程轉換時間和過濾器來監視分流電壓滴和總線電源電壓。可編程校準值與內部乘數結合使用,可以直接讀取Amperes中的電流。所選的8MΩ的分流電阻使電路的影響很小,也可以通過1ma分辨率的測量值產生了很小的影響。為了進行準確的測量,應選擇具有低公差(1%或更高)的分流電阻。
用戶界面使用兩個按鈕和一個SSD1306 128x32像素OLED顯示器。 ATTINY24/45/85微控制器處理用戶界面以及值的計算和顯示。
INA219連續測量電流和電壓,並通過I²C將值傳輸到Attiny。由此,Attiny計算其他值並將其顯示在OLED屏幕上。
I²C協議實現基於一種粗略的方法。它是專門針對Attiny10和Attiny13的有限資源而設計的,但它還與其他一些AVR(包括Attiny25/45/85)一起使用。 OLED的功能適用於SSD1306 OLED模塊,但可以輕鬆地修改它們以用於其他模塊。為了節省資源,僅實現了本應用程序所需的基本功能。有關I²COLED實施的工作原理的詳細信息,請訪問Tinyoleddemo。
Attiny的內部振盪器用於確定能量和容量。通過工廠校準,內部振盪器的準確性為+/- 10%。通過手動校準,這可以提高到+/- 2%或更高。可以在源代碼中設置以這種方式確定的校準值。
由於板上沒有ICSP標頭,因此您必須在使用SOP適配器焊接之前或使用EEPROM剪輯焊接之前對Attiny進行編程。 AVR程序員適配器可以為此提供幫助。
avrdude -c usbasp -p t85 -U lfuse:w:0x62:m -U hfuse:w:0xd5:m -U efuse:w:0xff:m -U flash:w:usb_tester.hex
DEVICE=attiny85 PROGRMR=usbasp make install以編譯,燃燒保險絲並上傳固件(相應地更改設備和Progrmr)。| 範圍 | 價值 |
|---|---|
| 電壓 | 3V -12V |
| 當前的 | 最大5A |
| 電壓測量分辨率 | 4MV |
| 當前測量分辨率 | 1ma |
這項工作是根據創意共享歸因 - 共享3.0未體育許可證的許可。 (http://creativecommons.org/licenses/by-sa/3.0/)