u8 IIC_Read_Byte(unsigned char ack)
{
unsigned char i,receive=0;
for(i=0;i<8;i++ )
{
IIC_SCL=0;
delay_us(2);
IIC_SCL=1;
receive<<=1;
if(READ_SDA)
{
receive++;
}
delay_us(1);
}
if (!ack)
IIC_NAck();//·¢ËínACK
else
IIC_Ack(); //·¢ËíACK
return receive;
}
上面我有两个地方不明白, 第一个 IIC_Read_Byte(unsigned char ack) 这个ack,在这里做形参吗?有什么用。
第二个是return receive ,这个值是返回给那个函数调用的。有什么用
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
我在主函数要怎么写
void main(void)
{
IIC_init();
delay_init()
IIC_Start()
IIC_Send_byte(0x18);
IIC_Wait_akc();
delay_us(10);
IIC_Send_byte(0x32);
IIC_Wait_akc();
delay_us(10);
IIC_Send_byte(0x21);
IIC_Wait_akc();
delay_us(10);
下面开始读代码
IIC_Start()
IIC_Send_byte(0x19);
IIC_Wait_akc();
delay_us(10);
IIC_Read_byte();
IIC_Read_byte();
}
请帮我看看,这部分read 函数对不对。括号里面要写什么吗?
一周热门 更多>