极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 15146|回复: 2

关于I2C读取数据的代码问题

[复制链接]
发表于 2018-10-23 11:28:00 | 显示全部楼层 |阅读模式
void setup()
{
       Serial.begin(9600);
       Wire.begin();
}

void loop()
{               
                                 
                 Wire.beginTransmission(address);
                 Wire.write(0x80);
                 Wire.write(Register_VOLT1);
                 Wire.endTransmission();
                 Wire.beginTransmission(BQ78PL116_address);//转换为7位地址
                 Wire.write(0x81);           
                 Wire.endTransmission();
                 Wire.requestFrom(0x81,2);
              if(Wire.available()<=2);
                 {
                  VOLT1_L = Wire.read();
                  VOLT1_H = Wire.read();
                  VOLT1 = VOLT1_H<<8 | VOLT1_L;
                  }
                 Serial.print(VOLT1);
                 Serial.println("mV");
                 delay(1000);            
               
}

依照时序图写了这个测试程序,但是一直输出65535,不输出实际数据,不知道是哪里出问题,请大神看看哦。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

 楼主| 发表于 2018-10-23 14:33:32 | 显示全部楼层
没有人可以添写几句吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-10-24 08:35:27 | 显示全部楼层
void loop()
{                                          
                 Wire.beginTransmission(address);//开始发送数据到对应地址的从机
                 //Wire.write(0x80);
                 Wire.write(Register_VOLT1);//发送数据寄存器地址命令
                 Wire.endTransmission();//停止发送
                 //Wire.requestFrom(0x81,2);
                 //Wire.requestFrom(address,2);//通知从机上传2个字节的数据
              if(Wire.available()>0);//主机接收到数据时
                 {
                  VOLT1_L = Wire.read();
                  VOLT1_H = Wire.read();
                  VOLT1 = VOLT1_H<<8 | VOLT1_L;
                  }
                 Serial.print(VOLT1);
                 Serial.println("mV");
                 delay(1000);           
               
}


将程序弄成这样,还是串口输出65535,不是实际数据。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-4-18 21:19 , Processed in 0.061041 second(s), 18 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表