void main()
{
init();
delay_ms(10);
while(1)
{
write_dis(b);
a=5;
write_24C02(0,a);
delay_ms(10);
b=read_24C02(0);
if(b==5)
Alarm=1;
}
} 这是我24C02的程序 这样写程序可以正常运行 蜂鸣器响
但是下面这种写法24C02掉电以后蜂鸣器不响 没有读取到数据
void main()
{
init();
delay_ms(10);
b=read_24C02(0);
while(1)
{
write_dis(b);
a=5;
write_24C02(0,a);
delay_ms(10);
if(b==5)
Alarm=1;
}
}
此帖出自
小平头技术问答
第一步.用串口将读到的输打出来,看看是什么数据,判断是没写成功,还是没读成功;
第二部 分析读操作或者写操作的问题
试一下,下面代码。
void main()
{
int i=10;
init();
delay_ms(10);
b=read_24C02(0);
delay_ms(10); ///-------------------------------------------------
while(i--)
{
write_dis(b);
a=5;
write_24C02(0,a);
delay_ms(10);
if(b==5)
Alarm=1;
}
}
解决了 是我I2C读取和写入的太频繁了 没有延时 谢谢
一周热门 更多>