求助ADS1115 低位读取不了
另外加延时等方法都试了,程序是网上复制的。现在剩下的就不知道是不是他们读寄存器的问题。只用了8位精度。或者电路上有什个么讲究吗?下面附上相关寄存器代码
1.第一部分 初始化的4个数
WriteIntBuf = 0x90; //0x90
WriteIntBuf = 0x01; //0x01
WriteIntBuf = Chnel;// 写入要配置的通道
WriteIntBuf = 0x83; //0xe3 8283
2.第二部分准备读取 IIC1_Send_Byte(0x90);//slave
while(IIC1_Wait_Ack());
IIC1_Send_Byte(0x00);
while(IIC1_Wait_Ack());
3.读取问题就在这里低位读取不了
Readbuff= IIC1_Read_Byte(1);//试过ACK和NACK
//试过加延时
Readbuff= IIC1_Read_Byte(0);
读取之前加这一步试试:
IIC1_Send_Byte(0x91); //slave 试改IIC1_Send_Byte(0xA0)看看 huangyanga 发表于 2018-8-9 19:14
读取之前加这一步试试:
IIC1_Send_Byte(0x91); //slave
哥们这肯定加了啊 不然高位也不会读粗来的啊
feixiang20 发表于 2018-8-10 00:02
试改IIC1_Send_Byte(0xA0)看看
谢谢哦试了木有用呢 zwjchinayids 发表于 2018-8-10 09:39
哥们这肯定加了啊 不然高位也不会读粗来的啊
读回来的高位是个什么值? 已经解决了 但有新的疑问了见贴 http://www.openedv.com/thread-276896-1-1.html
页:
[1]