树莓派读取模拟信号
- 连接方式 | VDD | 5V | | —- | —- | | GND | GND | | SCL | SCL | | SDA | SDA | | ADDR | GND | | A0~A3 | 传感器模拟输入pin |
树莓派I2C接口配置
sudo raspi-configInterFacing Options>I2Cenable
- 检查I2C设备是否在线
sudo apt-get install i2c-toolssudo i2cdetect -y 1

当ADDR引脚连接到GND时,地址为:0x48(0100, 1000B)
当ADDR引脚连接到VDD时,地址为:0x49(0100, 1001B)
当ADDR引脚连接到SDA时,地址为:0x4A(0100, 1010B)
当ADDR引脚连接到SCL时,地址为:0x4B(0100, 1011B)
Python adafruit-circuitpython-ads1x15模块使用
sudo pip install adafruit-circuitpython-ads1x15
import timeimport boardimport busioimport adafruit_ads1x15.ads1015 as ADSfrom adafruit_ads1x15.analog_in import AnalogIn# Create the I2C busi2c = busio.I2C(board.SCL, board.SDA)# Create the ADC object using the I2C busads = ADS.ADS1015(i2c)# Create single-ended input on channel 0 相当于读取ads1115 A0 的信息chan = AnalogIn(ads, ADS.P0)# Create differential input between channel 0 and 1#chan = AnalogIn(ads, ADS.P0, ADS.P1)print("{:>5}\t{:>5}".format('raw', 'v'))while True:print("{:>5}\t{:>5.3f}".format(chan.value, chan.voltage))time.sleep(0.5)
