#include <reg52.h>
#include <intrins.h>
sbit SDA = P3^0;
sbit SCL = P3^1;
typedef unsigned char uchar;
typedef unsigned int uint;
bit AckFlag; //应答标志位
#define At24c02ADDR 0xa0 //AT24C02硬件地址
#define I2cWrite 0 //写方向位
#define I2cRead 1 //读方向位
//延时5us函数
void delay5us()
{
_nop_();
}
//起始信号
void IIC_START()
{
SCL = 1;
SDA = 1;
delay5us();
SDA = 0;
delay5us();
}
//结束信号
void IIC_STOP()
{
SDA = 0;
SCL = 1;
delay5us();
SDA = 1;
delay5us();
}
//应答位,主机主动控制是否应答
void SendACK(bit
51模拟IIC
最新推荐文章于 2025-05-06 22:06:42 发布