微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI电源管理交流 > BQ76930的I2C通讯问题

BQ76930的I2C通讯问题

时间:10-02 整理:3721RD 点击:

今天板子终于到手了,现在正在调试IIC,BQ76930的LDO能正常输出3.3V,现在在单步调试的时候,发现接受不到BQ76930的ACK信号,

if(!iic_start())
{
return 0;
}
send_one_byte(I2C2_SLAVE_ADDRESS7);

if(!wait_ack())
{
iic_stop();
return 0;
}

在我发送完器件的地址(0x18)后,就进入了IIC_STOP();直接跳出了

我是用的STM32L152作为MCU,  采用PB6和PB7作为SCL和SDA,没有用硬件IIC,采用的是模拟I2C,这个模拟I2C读写程序,我已经在STM32F103ZET6上成功读写EEPROM (24L02),现在移植过来的,单步调试 每次等不到BQ76930的ACK而跳出

if(!iic_start())
{
return 0;
}
send_one_byte(I2C2_SLAVE_ADDRESS7);             //I2C2_SLAVE_ADDRESS7 = 0x18

if(!wait_ack())
{
iic_stop(); 
return 0;
}
send_one_byte(writeaddr);

wait_ack();

while(writelen--)
{
send_one_byte(*data);

iic_delay(20);

wait_ack();

data++;
}
iic_stop();

iic_delay(DELAY_TIME);

return 1;

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top