资源简介

清晰明确的操作思路 详细的注释 通过IIC总线读写AT24C02B(EEPROM),同时用LED反映读出数据状态

资源截图

代码片段和文件信息

#include 
#define uchar unsigned char
sbit SCL=P3^2;
sbit SDA=P3^3;
void delay()
{ ; ; }
void delay1(uchar x)
{
uchar ab;
for(a=x;a>0;a--)
for(b=100;b>0;b--);
}
void start()//起始信号
{
SDA=1;
delay();
SCL=1;
delay();
SDA=0;
delay();
}
void stop()//终止信号
{
SDA=0;
delay();
SCL=1;
delay();
SDA=1;
delay();
}
void respons()//应答信号
{
uchar i;
SCL=1;
delay();
while((SDA==1)&&(i<255))//等待应答信号,255可以变动
{
i++;
}
SCL=0;
delay();
}
void init()
{
SDA=1;
SCL=1;
}
void write_byte(uchar date)//写一个字节
{
uchar itemp;
temp=date;
SCL=0;
delay();
for(i=0;i<8;i++)
{
temp=temp<<1;//左移最高位移入CY寄存器中
SDA=CY;
delay();
SCL=1;
delay();
SCL=0;
delay();
}
SDA=1;//总线释放,准备读取应答信号
delay();
}
uchar read_byte()//读一个字节
{
uchar ijk;

评论

共有 条评论