首页 > 其他分享 >AD7745/AD7746简介

AD7745/AD7746简介

时间:2022-12-30 09:12:17浏览次数:42  
标签:rt VCC frac AD7746 ad7745 简介 AD7745 电容

简介

AD7745/AD7746,24位CDC(Capacitance-to-Digital Converter)转换芯片。AD7745单路,AD7746为双路输入。
测量范围+-4pF,最大偏置电容为17pF。数据更新频率10~90HZ
I2C接口
2.7V~5.25V供电
0.7mA电流消耗
封装:TSSOP-16
除了CDC的转换,芯片还自带片上温度传感器,及电压输入通道。这里我们只简单介绍CDC的一种使用方式,也不探究其内部的具体实现方式。
虽然测量范围+-4pF,可以通扩容的方式增大测量范围
主要用于压力、位置、湿度等的测量
如下是管脚分布图

使用电路


这个是测量的电路图,CIN+与CIN-两个管脚输入,同时配置两个偏置电容形成最基本的测量电路。
激励管脚是不能省略的,必须要使用上。
电容的测量值由下面的公式来得到

同时配置输入管脚与偏置电容,可以将测量的范围移动来达到我们的测量要求。

单管脚输入


有时我们并不需求测量两个电容,可以通过将CAPDIFF设置为0设置为单管脚输入,同时CAPDAC(-)维持默认0即可。
上图将CAPDAC(+)设置为17pF,这样整个测量范围就调整为13~21pF。

扩容电路

+-4pF的测量范围并不能满足很多电容的测量,还可以配置双激励管脚与电阻分压的方式。
将测量范围进行扩容,扩容的同时偏置电容的值也会进行相应的扩容。

扩容比例为

EXCA与EXCB需要在EXCSETUP的寄存器中配置为反向。同时EXC的LEVEL也需要配置为VCC/2

扩容比例理解

原始激励源以VCC/2为基点,振幅为VCC/2
EXCA为VCC,EXCB为0时,激励点电压为 \(\frac{R_2*VCC}{R_1+R_2}\)
EXCA为0,EXCB为VCC时,激励点电压为 \(\frac{R_1*VCC}{R_1+R_2}\)
振幅为\(\frac{R_2*VCC}{R_1+R_2} - \frac{VCC}{2} = \frac{(R_2 - R_1)*VCC}{2(R_1+R_2)}\)
\(K = \frac{VCC}{2} / \frac{(R_2 - R_1)*VCC}{2(R_1+R_2)} = \frac{R_2 + R_1}{R_2 - R_1}\)
这样就可以得出文档中K值的意义了

寄存器设置

I2C设备地址

设备地址为0x48

复位

写入寄存器地址为0xBF时发生复位操作

STATUS


通过判断RDYCAP来确认数据是否准备好了,再读取相当的CAP的测量值

CAPSETUP


CAPEN使能
CADDIFF配置单管脚输入
CAPCHOP配置用加长时间,提高精度

EXCSETUP


配置激励源的两个管脚的极性与幅值

CONFIGURE


配置转换时间与转换模式

CAPDACA


高位设置是否使能
低7位为具体的值,配置偏置电容,最大17pF,按7位成比例放大

CAPDATA

示例代码

rt_uint8_t capSetupCmd = AD7745_CAPSETUP_CAPEN | AD7745_VTSETUP_VTCHOP;
rt_uint8_t excSetupCmd = AD7745_EXCSETUP_NEXCB | AD7745_EXCSETUP_EXCLVL_VDD_DIV_2;
rt_uint8_t configureCmd = AD7745_CONF_V_TF_62MS_1 | AD7745_CONF_C_F_62MS_0 | AD7745_CONF_MODE_CONT_CONV;
rt_uint8_t capDacACmd = 0x5d | AD7745_CAPDAC_DACEN;
/*********************************************************
*********************************************************/
static rt_err_t ad7745_init(rt_device_t dev)
{	
	ad7745_i2c_bus = (struct rt_i2c_bus_device *)rt_device_find(AD7745_I2C_BUS_NAME);
	if(ad7745_i2c_bus == RT_NULL)
		rt_kprintf("can't find %s device!\n", AD7745_I2C_BUS_NAME);

	ad7745_write_reg(AD7745_REG_EXC_SETUP, &excSetupCmd, 1);
	ad7745_write_reg(AD7745_REG_CFG, &configureCmd, 1);
	ad7745_write_reg(AD7745_REG_CAP_SETUP, &capSetupCmd, 1);
	ad7745_write_reg(AD7745_REG_CAPDACA, &capDacACmd, 1);
	return RT_EOK;
}


/*********************************************************
*********************************************************/
static rt_size_t ad7745_read(rt_device_t dev, rt_off_t pos, void *buffer, rt_size_t size)
{
	rt_uint8_t status = AD7745_STATUS_RDYCAP;
	ad7745_read_reg(AD7745_REG_STATUS, &status, 1);
	while(status & AD7745_STATUS_RDYCAP)
	{
		ad7745_read_reg(AD7745_REG_STATUS, &status, 1);
		rt_thread_mdelay(20);
	}

	if(size == 3)
		ad7745_read_reg(AD7745_REG_CAP_DATA_HIGH, buffer, size);
	else
		size = 0;
	return size;
}

总结

AD7745/6是一款高精度的电容数字转换芯片,I2C通信方式使用起来也比较方便。

标签:rt,VCC,frac,AD7746,ad7745,简介,AD7745,电容
From: https://www.cnblogs.com/stupidpeng/p/17011655.html

相关文章

  • Socket简介
    1.什么是Socket在计算机通信领域,socket被翻译为“套接字”,它是计算机之间进行通信的一种约定或一种方式。通过socket这种约定,一台计算机可以接收其他计算机的数据,也可......
  • 图形查看器丨IrfanView功能简介
    IrfanView是一款快速、紧凑和创新的图形查看器,适用于WindowsXP、Vista、7、8、10和11。 IrfanView寻求创建独特、新颖和有趣的功能,与其他一些图形查看器不同,它......
  • Movavi视频套件2022功能简介
    Movavi视频套件2022多合一的视频制作工具:编辑器、转换器、屏幕录像机等。非常适合远程工作和远程学习。  产品功能01、编辑视频和音频使用......
  • 第一个Mybatis程序示例 Mybatis简介(一)
    一步一步搭建Mybatis的使用示例,项目中可能只是编写接口与XML映射文件,本文根据官方文档从底层描述一个完整示例,并对Mybatis进行了一个简单的介绍,作为入门......
  • Web技术的发展 网络发展简介(三)
    即使你精通js,但是却不知道为什么有js的话,人生岂不是有点缺憾?天天开发web项目,却不了解点历史,是否也会有点失落?本文从web的最初发明的历史开始,对web的发展......
  • LF Professional及WINTERACTER产品简介
    LF专业版v7.9LFProfessionalv7.8将32/64位Rainier编译器与经典的Lahey/FujitsuLF95编译器相结合!Rainier完全符合Fortran95/90/77标准,并广泛支持Fortran2003......
  • 黄民烈简介
    姓名:黄民烈职称:副教授电子邮件:[email protected]个人主页:http://coai.cs.tsinghua.edu.cn/hml/教育背景工学学士(工程物理),清华大学,中国,2000;工学博士......
  • 6 HPA 控制器简介与实现和RBAC简介及账户授权
    一HPA控制器简介与实现1.1HPA介绍https://github.com/kubernetes-sigs/metrics-server简介计算公式当前cpu利用率除以阈值,在跟当前pod数量进行比较,看是否增加比如......
  • Django简介以及基本使用
    目录Django简介以及基本使用一、django简介1.web框架的本质是什么?2.python主流web框架有那些?3.web框架的推导过程二、基本使用1.运行django注意事项2.下载Django的终端命......
  • MongoDB - 副本集简介
    简介在MongoDB中,副本集指的是一组MongoDB服务器实例掌管同一个数据集,实例可以在不同的机器上。其中一个用于处理写操作的是主节点(Primary),还有多个用于保存主节点的数......