IIC知识整理以及ADS1115

原文转自:https://blog.csdn.net/g2117805/article/details/70058978

操作实例
接下来将用IIC获取ADS1115芯片的电压值。

SLAVE地址 
由于模块addr pin是悬空的,参考表5应该和Ground同一个地址,为SLAVE ADDRESS:1001000。

è¿éåå¾çæè¿°

Pointer 寄存器

è¿éåå¾çæè¿°

这个寄存器具有指向下一个寄存器的作用,类似索引,通过向该寄存器写入不同的数据,就可指向相应的寄存器,接下来就可以对该寄存器进行操作。

以指向config寄存器操作为例:

对寄存器config进行写操作 
Start+地址+写+ACK*+0000 0001+ACK*+Config_H+ACK*+Config_L+NACK*/ACK*+End

对寄存器config进行读操作 
Start+地址+写+ACK*+0000 0001+NACK*/ACK*+End 
ReStart+地址+读+ACK*+Config_H*+ACK+Config_L*+NACK+End 
注:带*表示从设备向主设备发送。

pointer寄存器中只有BIT1、BIT0有效,指向地址见表6如下: 

è¿éåå¾çæè¿°

CONFIG 寄存器 

è¿éåå¾çæè¿°

è¿éåå¾çæè¿°

Lo_thresh and Hi_thresh 寄存器

è¿éåå¾çæè¿°
上下限,寄存器中的是带符号的补码(负数 取反加1) 
默认: 
补码:8000 H~7FFF H 
原码:(-2^15)~(2^15-1)

CONVERSION寄存器 
该寄存器存着转换得到的AD值。 
例如: 

è¿éåå¾çæè¿°
操作流程
设置 Lo_thresh 和 Hi_thresh 寄存器 
对 Lo_thresh 写操作 
Start+地址+写+ACK*+00000010+ACK* 
+Lo_thresh_H+ACK*+Lo_thresh_L+NACK*/ACK*+End 
对 Hi_thresh 写操作 
Start+地址+写+ACK*+00000011+ACK* 
+Hi_thresh_H+ACK*+Hi_thresh_L+NACK*/ACK*+End
设置CONFIG 寄存器 
Start+地址+写+ACK*+0000 0001+ACK*+Config_H+ACK*+Config_L+NACK*/ACK*+End
读取Conversion register 
Start+地址+写+ACK*+0000 0000+NACK*/ACK*+End 
ReStart+地址+读+ACK*+Conversion_H*+ACK+Conversion_L*+NACK+End
转换
参考
[1] Semiconductor P. The i2c-bus specification[J]. 2000. 
[2] ADS1115 datasheet 
[3] wiki
--------------------- 
作者:Gao_Line 
来源:CSDN 
原文:https://blog.csdn.net/g2117805/article/details/70058978 
版权声明:本文为博主原创文章,转载请附上博文链接!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值