MCP3424 18位AD转换模块

            <img alt="" src="http://images.ncnynl.com/arduino/2016/300px-SKU-DFR0316.png" width="300" height="176" class="thumbimage" />  <img src="http://images.ncnynl.com/arduino/2016/magnify-clip.png" width="15" height="11" alt="" />可编程4通道18位ADC模块

目录

1 概述
2 适用范围
3 技术规格
4 接口说明
5 注意事项
6 使用教程

6.1 Arduino电压测量
6.2 树莓派电压测量

7 产品购买链接

概述
模块集成了高品质的的MCP3424实现模拟量到数字量(AD)转换,可以为树莓派提供获取模拟量的功能 ,也可以满足Ardruino等高精度AD转换的需求。
MCP3424是一款低噪音、高精度的18位A/D转换芯片,其特点是:

在每个转换周期内,自动对失调和增益误差进行校正。
其分辨率可以设置,以满足不同场景的要求。
用户可在A/D转换之前可选择PGA增益对信号进行放大,方便对微弱电压检测。
提供两种转换模式:单次转换模式和(b)连续转换模式。
(a)单次转换模式:器件在完成一次转换后自动进入低电流待机模式,直至接收到新的转换命令,这样可显著降低空闲周期内的电流消耗,建议使用该模式。
(b)在连续转换模: 器件以设定的转换速率进行连续转换,这样可以直接读取数据前不用再次启动转换。

适用范围
温度、力度等传感器
电池等计量
工业自动化设备

技术规格
工作电压:2.7 - 5.5V
待机电流:300nA (5V)
工作温度:-40°C ~ +125°C
片内参考电压:2.048V ± 0.05%, 漂移15 PPM /°C
片内可编程增益(PGA):x1,x2,x4,x8 (x1为缺省值)
差分输入范围:-2.048V / PGA ~ 2.048V / PGA
可设置分辨率:12位、14位、16位、18位 (12为缺省值)
采样速率:240次/s, 60次/s ,15次/s,3.75次/s(与分辨率相对应)
增益误差:0.05% (PGA = 1,18位)
失调误差:15uV (PGA = 1,18位)
输入接口:4路差分输入,2.54mm间距排针
输出接口:I2C,2.54mm间距排针
模块尺寸:27x16mm

注:差分输入范围和PGA相关,以PGA=4为例,则其输入范围为 -0.512(-2.048/4)V ~ 0.512(2.048/4)V

接口说明
ADC3424.JPG
输入输出引脚如图所示。

拨码说明:模块通过一组拨码开关设置I2C的通讯地址,拨码的设置参见模块上的地址表

注意事项
该模块是差分输入,测量的是输入通道正(CH+)和负(CH-)之间的的电压差。如果进行单端测量,需将相应通道的负和被测系统接地。

使用教程
Arduino电压测量
a) 目标:Arduino电压测量
使用Arduino环境,测试稳压电源的电压值,然后通过串口调试助手显示出来。
b) 硬件清单

DF_UNO 1
本模块 1个
可调稳压电源 1个
杜邦线

c) 软件清单

Arduino IDE
Arduino MCP3424库

d) 连线图

Cs2.png
e) 操作步骤

将稳压电源调节到最小,然后打开电压,将电压调整到(0-2.085V)内
安装Arduino MCP3424库,参见安装Arduino库
打开Arduino IDE
将下面的代码上传到UNO

/* MCP 3424 version 1.2 example sketch OneShotConversion
Written by B@tto
Contact : batto@hotmail.fr

In this example, one conversion per second is performed on channel 1 and 16 bits resolution.
A new conversion has to be initiated by the user
*/

#include <Wire.h>
#include <MCP3424.h>

MCP3424 MCP(0x68); // Declaration of MCP3424 with Address of I2C

long Voltage;

void setup(){

Serial.begin(9600);
MCP.Configuration(1,16,0,1); // Channel 1, 16 bits resolution, one-shot mode, amplifier gain = 1

}

void loop(){

MCP.NewConversion(); // New conversion is initiated

Voltage=MCP.Measure(); // Measure, note that the library waits for a complete conversion

Serial.print("Voltage = ");
Serial.print(Voltage);
Serial.println("uV"); // unit: microVolt

delay (1000);

}

f) 实现效果

打开Ardino串口,可以观察到电压值。

树莓派电压测量
a) 目标:树莓派读取电压
b) 硬件清单

树莓派 B+ 1
本模块 1个
杜邦线

c) 软件清单

MCP3424 I2C Linux驱动

d) 连线图:请参考前一示例,将转换通道与树莓派GPIO中的I2C和电源引脚相连接。
e) 操作步骤:请参考该驱动的说明。

产品购买链接
购买

标签: Arduino传感器