如何与Arduino一起使用ADS1115 ADC

How to Use the ADS1115 ADC with Arduino

ADS1115是具有I2C接口的16位精确模数转换器(ADC)。它提供高精度和多个输入渠道,非常适合在Arduino项目中读取传感器,监视电压或放大信号。本教程将指导您通过Arduino连接和使用ADS1115。


你需要什么

  1. ADS1115 ADC模块
  2. Arduino董事会(例如Uno,Mega,Nano)
  3. 传感器或模拟设备(例如电位计)
  4. 面包板和跳线电线
  5. 安装了带有Arduino IDE的计算机

步骤1:了解ADS1115模块

ADS1115提供:

  • 16位ADC分辨率 (差分输入15位)。
  • 4个输入通道 (或2个差异对)。
  • 可编程增益放大器(PGA) 用于信号放大。

ADS1115 PINOUT

别针 功能
VCC 电源(3.3V/5V)
gnd 地面
SDA I2C数据线
SCL I2C时钟线
addr I2C地址配置
  • ADDR引脚配置:
    • gnd: 0x48 (默认地址)
    • VCC: 0x49
    • SDA: 0x4A
    • SCL: 0x4B

步骤2:将ADS1115接线到Arduino

将ADS1115连接到Arduino,如下所示:

ADS1115针 Arduino Pin
VCC 5V
gnd gnd
SDA A4(SDA)
SCL A5(SCL)

笔记: 对于其他Arduino板,请确保使用正确的I2C引脚。


步骤3:安装所需的库

要简化与ADS1115的通信,请安装AdaFruit ADS1X15库。

安装步骤:

  1. 打开Arduino IDE。
  2. 草图 > 包括库 > 管理库.
  3. 搜索“ Adafruit ADS1X15”,然后单击 安装.

步骤4:上传代码

这是一个示例草图,可以读取ADS1115的模拟输入:

#include <Wire.h>
#include <Adafruit_ADS1X15.h>

Adafruit_ADS1115 ads; // Create an ADS1115 object

void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("Initializing ADS1115...");

  if (!ads.begin()) {
    Serial.println("Failed to detect ADS1115. Check connections.");
    while (1);
  }

  Serial.println("ADS1115 initialized.");
}

void loop() {
  int16_t adc0 = ads.readADC_SingleEnded(0); // Read channel 0
  float voltage = adc0 * 0.1875 / 1000.0; // Convert to voltage (gain = 2/3)

  Serial.print("ADC Value: ");
  Serial.print(adc0);
  Serial.print(" | Voltage: ");
  Serial.print(voltage);
  Serial.println(" V");

  delay(500); // Wait for 500ms before the next reading
}

步骤5:测试设置

  1. 通过USB将Arduino连接到您的计算机。
  2. 打开Arduino IDE并选择正确的 木板港口工具 菜单。
  3. 单击将代码上传到Arduino 上传.
  4. 打开串行监视器(工具 > 串行监视器)并将波特率设置为 9600.
  5. 改变输入电压(例如,使用电位计),并观察ADC值和电压读数。

可选:使用微分模式

ADS1115还可以测量两个输入引脚之间的差异(例如A0和A1):

int16_t diff = ads.readADC_Differential_0_1(); // Measure difference between A0 and A1
float voltage = diff * 0.1875 / 1000.0; // Convert to voltage
Serial.println(voltage);

ADS1115的应用

  1. 高精度传感器读数
  2. 电压监测和尺寸
  3. 小型传感器的信号扩增
  4. 差异信号测量

故障排除

  • 传感器没有响应: 验证I2C连接并确保使用正确的I2C地址。
  • 不一致的读数: 检查稳定的电源和清洁信号输入。
  • 低分辨率: 确保您在输入范围内使用正确的增益设置。

结论

您已成功将ADS115 ADC与Arduino联系起来。 ADS1115具有高精度和灵活性,是需要准确的类似物转换率的各种项目的绝佳工具。尝试其功能以构建高级测量系统和传感器接口!

发表评论

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.