用51单片机做宿舍门禁系统(3)--EEPROM存储

密码锁修改密码后,需要自我保存,所以这就需要一个小型存储器来存储密码,而at24c01容量足够存储这么少的东西,而且价格便宜,使用的i2c通讯,所以采用。

需要注意的是,写入数据需要保持时序一致(5ms一次)
i2c.c

#include "i2c.h"

void Delay10us()
{
   
   
	unsigned char a,b;
	for(b=1;b>0;b--)
		for(a=2;a>0;a--);

}

//SCL线为高电平期间.SDA线由高电平向低电平的变化表示起始信号
void I2cStart()	
{
   
   
	SDA=1;
	Delay10us();
	SCL=1;
	Delay10us();//先保持数据线和时钟线高电平一段时间
	SDA=0;	// 数据线向低电平跳变
	Delay10us();
	SCL=0;	//拉低时钟线		
	Delay10us();		
}

//SCL线为高电平期间,SDA线由低电平向高电平的变化表示终止信号
void I2cStop()
{
   
   
	SDA=0
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值