uint8 ret;}
SCL = HIGH;
delay(50);
ret = SDA;
SCL = LOW;
delay(50);
return ret;
uint8 ack;}
uint8 high,low;
//设置IIC连接的pin为输出模式
SET_GPIO_MODE(GPD.GPDCON,3,1);
SET_GPIO_MODE(GPD.GPDCON,4,1);
delay(100);
//产生起始信号
iic_start();
//发送从机地址
iic_write_byte(0x91);
//设置IIC连接的pin(SDA)为输入模式
SET_GPIO_MODE(GPD.GPDCON,3,0);
//等待从机的ACK
do{
ack = iic_get_ack();
}while(ack);
//读取从机发送过来的数据
high = iic_read_byte();
//设置IIC连接的pin(SDA)为输出模式
SET_GPIO_MODE(GPD.GPDCON,3,1);
//发送ACK信号
iic_send_ack();
//设置IIC连接的pin(SDA)为输入模式
SET_GPIO_MODE(GPD.GPDCON,3,0);
//读取从机发送过来的数据
low = iic_read_byte();
//设置IIC连接的pin(SDA)为输出模式
SET_GPIO_MODE(GPD.GPDCON,3,1);
//发送停止信号
iic_stop();
return (high << 8) | low;
欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) | Powered by Discuz! 7.0.0 |