1.ADS1115简介
ADS1115是德州仪器推出的具有IIC接口的16位ADC转换器,超小型X2QFN或VSSOP 封装,低功耗(20uA),宽电压输入2.0V-5.5V,可编程数据转换速率8SPS-860SPS,四个单端输入或两个差分输入。可应用于,电池电压电流检测,低速便携式仪表以及温度测量系统中。
简化图为
2.引脚功能
引脚名称 | 类型 | 描述 |
---|---|---|
ADDR | 数字量输入 | I2C 丛机地址选择 |
AIN0 | 模拟量输入 | 模拟量输入0通道 |
AIN1 | 模拟量输入 | 模拟量输入1通道 |
AIN2 | 模拟量输入 | 模拟量输入2通道 |
AIN3 | 模拟量输入 | 模拟量输入3通道 |
ALERT/RDY | 数字量输出 | 比较器输出或转换就绪 |
GND | 模拟量 | 接地 |
SCL | 数字量输入 | IIC时钟 |
SDA | 数字量输入/输出 | IIC数据线 |
VDD | 模拟量 | VCC(2.0V-5.5V) |
3.寄存器
ADS1115具有四个寄存器,可通过I2C接口使用AddressPointerRegister进行访问寄存器。 ConversionRegister包含上一次转换的结果。 ConfigRegister用于更改ADS1115工作模式并查询设备状态。 其他两个寄存器Lothresh和Hithresh,设置用于比较器功能的阈值。
5.1 地址指针寄存器(只写)
5.2 转换寄存器(P[1:0] = 0x00) [reset = 0x0000] (只读)
16位转换寄存器包含二进制二进制补码格式的最后一次转换结果。 上电后,转换寄存器清除为0,并保持0直到第一次转换完成。
5.3配置寄存器(P[1:0] = 0x01) [reset = 8583h]
16位配置寄存器用于控制工作模式,输入选择,数据速率,满量程范围和比较器模式。
寄存器的内容主要包括
数据手册中的英文资料
里面参数的解释如下:
5.3.1量程与分辨率
不同量程下对应的最小分辨率
5.3.2 采样速率与转换时间
采样速率可以由中的DR[2:0]位来控制,AD转换可以在一个周期内完成,因此转换时间为1/DR。
5.3.3数字比较器(在本次实验不使用)
ADS1115具有可编程的数字比较器,可以在ALERT/RD引脚上发出警报。Config寄存器中的COMP_MODE位将比较器配置为传统比较器或窗口比较器。 在传统的比较器模式下,当转换数据超过高阈值寄存器(Hi_thresh)中设置的限制时,ALERT / RDY引脚将置为有效(默认为低电平有效)。 然后,仅当转换数据降至低阈值寄存器(Lo_thresh)中设置的限制以下时,比较器才会置为无效。 在窗口比较器模式下,当转换数据超过Hi_thresh寄存器或低于Lo_thresh寄存器值时,ALERT / RDY引脚将置为有效。
在窗口模式或传统比较器模式下,均可将比较器配置为在被配置寄存器中的COMP_LAT位置位后锁存。即使输入信号未超出阈值寄存器的范围,此设置也将保留断言。只能通过发出SMBus警报响应或读取转换寄存器来清除此锁存的断言。可以通过Config寄存器中的COMP_POL位将ALERT / RDY引脚配置为高电平有效或低电平有效。
两种比较器模式只有在一定数量的连续读数超过阈值寄存器中设置的阈值(Hi_thresh和Lo_thresh)之后,比较器也可以配置为激活ALERT / RDY引脚。 Config寄存器中的COMP_QUE [1:0]位将比较器配置为在激活ALERT / RDY引脚之前等待超过阈值的一,二或四个读数。 COMP_QUE [1:0]位还可以禁用比较器功能,并将ALERT / RDY引脚置于高电平状态
5.3.4 操作模式
ADS1115由两种模式,连续转换和单次转换,中的MODE位选择相应的工作模式。
当中的MODE 位设置为1时,ADS1115进入掉电状态,并以单次转换模式工作,首次上电时,此状态时ADS的默认状态。尽管进入了掉电模式,但设备仍会响应命令。 ADS1115保持此掉电状态,直到将1写入中的操作状态(OS)位。当OS位有效时,器件将在大约25μs的时间内上电,将OS位复位为0,并开始单次转换。当转换的数据准备好后,设备会再次掉电。正在进行的转换时将1写入OS位无效。要切换到连续转换模式,请将0写入MODE中的MODE位。
在连续转换模式(MODE位设置为0)下,ADS1115连续执行转换。转换完成后,ADS1115将结果放入转换寄存器,并立即开始另一次转换。配置新的设置时,当前正在进行的转换将使用先前的设置完成转换。此后,将开始使用新的设置进行连续转换。要切换到单次转换模式,请向配置寄存器的MODE位写入1或复位设备。
5.4Lo_thresh (P[1:0] = 2H) [reset = 8000h]
Hi_thresh (P[1:0] = 3H) [reset = 7FFFh]寄存器
比较器使用的上下阈值以二进制补码格式存储在两个16位寄存器。 比较器为数字比较器。 因此,只要更改PGA设置,就必须更新这两个寄存器中的值(使能比较器前提下)。 通过将Hi_thresh寄存器MSB设置为1并将Lo_thresh寄存器MSB设置为0,要使用ALERT / RDY引脚的比较器功能,Hi_thresh寄存器值必须始终大于 Lo_thresh寄存器值。
ADS1115以二进制补码格式提供16位数据。 正满量程(+ FS)输入时,输出的AD值代码为7FFFh,负满量程(-FS)输入时,输出的AD值代码为8000h。这些代码的输出为了提示超量程的提示。
4.ADS1115 的使用操作
第一部分: write config register
1、0x90 是从器件写地址。【注:最后一位是R/VW位,高为读,低为写。因此:从器件写地址为0x90,从器件读地址为0x91】
2、0X01 指向配置寄存器
3、开始设置配置寄存器的参数,根据自己的需要(配置参数分为高低字节,高8位为通道、量程、转换模式;低8位为采样速率设置、比较模式、有效电平、信号输出锁存)。
第二部分: write to pointer register
1、0x90 是从器件写地址。【注:最后一位是R/VW位,高为读,低为写。因此:从器件写地址为0x90,从器件读地址为0x91】
2、0X00 指向转换寄存器
第三部分: read conversion register
1、0x91 是从器件读地址
2、应答转换寄存器的MSB
3 、应答转换寄存器的LSB
警告:
从一个通道切换到另外一个通道,中间必须延时5毫秒,否则采集值不准。