ARDUINO UON R3读取ADS1115模块差分输入测量
这个是以前的例子,改了下。使用Arduino Uno R3和ADS1115模块进行差分输入测量是一个常见的应用场景,特别是在需要高精度测量小信号时。ADS1115是一款16位模数转换器(ADC),具有4个单端或2个差分输入通道,非常适合用于信号处理。
所需材料
Arduino Uno R3
ADS1115模块
若干杜邦线
信号源(可选,用于测试)
连线说明
ADS1115 VCC-> Arduino 5V:为ADS1115供电。
ADS1115 GND-> Arduino GND:接地。
ADS1115 SCL-> Arduino A5(或SCL引脚,如果使用的是I2C专用引脚板):I2C时钟线。
ADS1115 SDA-> Arduino A4(或SDA引脚,如果使用的是I2C专用引脚板):I2C数据线。
ADS1115 ADDR-> Arduino GND(或根据需要接到其它电平以设置不同I2C地址,如果多个ADS1115模块共用I2C总线时需要)。
ADS1115 AIN0> 信号源正极:差分输入的正输入。
ADS1115 AIN1-> 信号源负极:差分输入的负输入。
注意事项
确保ADS1115和Arduino的共地连接良好,以避免测量误差。
ADS1115可以通过I2C接口与多个设备共享总线,但每个设备的地址必须唯一,可通过ADDR引脚设置。
使用合适的去耦电容(通常在VCC和GND之间加一个0.1uF的电容)来减少电源噪声。
代码示例
以下是一个使用Arduino库Adafruit_ADS1X15来读取ADS1115差分输入的示例代码。首先,你需要安装这个库,可以通过Arduino IDE的库管理器进行安装。
代码解释
初始化:
导入必要的库。
创建ADS1115对象。
初始化串口通讯。
检查ADS1115是否成功连接。
设置ADS1115:
设置PGA(可编程增益放大器)的增益。这里选择ADS1115_REG_CONFIG_PGA_6_144V,意味着输入范围为±3.072V。
开始一个单端转换,但实际上我们在循环中使用差分读取。
循环读取:
使用readADC_Differential_0_1()函数读取AIN0和AIN1之间的差分输入。
打印读取值到串口监视器。
页:
[1]