M5StackでHat ADC を使う

Using the Hat ADC ・ 使用 Hat ADC

M5StackのHat ADCをコントローラーに接続する最小構成。配線とBOMつき。

この構成をエディタで開く・編集する →

部品リスト(BOM)

部品役割ポートリンク・価格
AtomS3Controllergrove_i2c, i2c, spi, gpio, usb_cofficial page — $15.5
Hat ADChati2cofficial page — $10.95

配線

作り方

AtomS3とHat ADCをI2C接続で組み合わせ、0~12Vのアナログ電圧を高精度(16ビット)で測定できる簡易的な電圧計測システムです。Hat ADCはADS1100チップを搭載し、I2Cアドレス0x48で通信します。

  1. 部品を用意する — 必要なもの:AtomS3本体、Hat ADC、Groveケーブル(4ピン、I2C用)、AtomS3とパソコンをつなぐUSB-Cケーブル。
  2. GroveケーブルでAtomS3とHat ADCを接続する — Groveケーブルの一端をHat ADCのGroveポートに差し込みます。もう一端をAtomS3のGroveポート(Port.A、赤色)に差し込みます。コネクタは一方向にしか入らないので、向きを確認して無理に押し込まないでください。
  3. パソコンにつないでMicroPythonを書き込む — USB-CケーブルでAtomS3をパソコンにつなぎます。UIFlowやThonnyなどのツールで、AtomS3にMicroPythonファームウェアが入っていることを確認し、下のコードをデバイスにコピーして実行します。
  4. 動作を確認する — コードを実行すると、AtomS3の画面にHat ADCが読み取った電圧値(0~12V)が表示されます。測定したい電圧をHat ADCの入力端子(VINとGND)に接続して、正しく表示されるか確認してください。

サンプルコード(micropython)

# M5Stack AtomS3 + Hat ADC (ADS1100) voltage meter
# Wiring: Hat ADC -> AtomS3 Grove Port (I2C)
# I2C address: 0x48
import time
from machine import Pin, I2C
from m5stack import lcd

# Initialize I2C on AtomS3's Grove port (Port.A)
i2c = I2C(0, scl=Pin(1), sda=Pin(2), freq=400000)  # AtomS3 SCL=G1, SDA=G2

# ADS1100 I2C address
ADS1100_ADDR = 0x48

def read_ads1100():
    # Read 2 bytes from ADC
    data = i2c.readfrom(ADS1100_ADDR, 2)
    # Combine bytes: MSB first, 16-bit signed
    raw = (data[0] << 8) | data[1]
    # Convert to signed (16-bit)
    if raw >= 0x8000:
        raw -= 0x10000
    # Convert to voltage: reference = 2.048V, gain = 1, 16-bit
    # Voltage = raw * 2.048 / 32768
    voltage = raw * 2.048 / 32768.0
    # Scale to input range 0-12V (voltage divider on Hat ADC)
    # Hat ADC divides input by ~5.86 (12V / 2.048V)
    input_voltage = voltage * 5.86
    return input_voltage

while True:
    try:
        v = read_ads1100()
        lcd.clear()
        lcd.print('Voltage: {:.3f} V'.format(v), 10, 20)
    except Exception as e:
        lcd.clear()
        lcd.print('Error: ' + str(e), 10, 20)
    time.sleep(1)

コツ・安全上の注意

この作り方はAIが構成から生成したものです(未検証)。通電前に配線とコードをご確認ください。

この構成はAIが実在するM5Stack部品から設計し、ポート互換をサーバで検証したものです。編集・共有できます。

エディタで開く →

UnitKit は M5Stack® 製品向けの非公式ツール。作りたいものを書くと、部品リストと配線図が出ます。