⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ds1302.h

📁 万年历+温度+12864LCD
💻 H
字号:
	
#define uchar unsigned char
sbit  DS1302_CLK = P2^4;              //实时时钟时钟线引脚 
sbit  DS1302_IO  = P2^5;              //实时时钟数据线引脚 
sbit  DS1302_RST = P2^3;              //实时时钟复位线引脚


void write_1302(uchar data_1302)//向1302中写入一个字节
{
	uchar i;
	for(i=0;i<8;i++)
	{
		DS1302_IO=(bit)(data_1302&0x01);
		DS1302_CLK=1;
		DS1302_CLK=0;
		data_1302>>=1;
	}
}

uchar read_1302(void)		//从1302中读取一个字节
{
	uchar i,data_1302;
	for(i=0;i<8;i++)
	{
		data_1302>>=1;
		if(DS1302_IO)
		{
			data_1302|=0x80;
		}
		DS1302_CLK=1;
		DS1302_CLK=0;
	}
	return (data_1302);
}


//读出1302的时间序列
void read_serial(uchar j[8])
{
	uchar i;
	DS1302_RST = 0;
	DS1302_CLK = 0;
	DS1302_RST = 1;
	write_1302(0xbf);//0xbf为连续读出的命令代码
	for(i=0;i<8;i++)
	{
		j[i] = read_1302();
	}
	DS1302_CLK = 1;
	DS1302_RST = 0;

}

//写入1302的时间序列
void write_date_time(uchar j[8])
{
	uchar i;
	DS1302_RST = 0;
	DS1302_CLK = 0;
	DS1302_RST = 1;
	write_1302(0xbe);//0xbe为连续写入的命令代码
	for(i=0;i<8;i++)
	{
		write_1302(j[i]);
	}
	DS1302_CLK = 1;
	DS1302_RST = 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -