文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.1DS1302:1:DS1302简介:DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RARAMM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闰年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充电方式,提供了对后背电源进行涓细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录,特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。图1DS1302的外部引脚分配图2DS1302的内部结构各引脚的功能为:Vcc1:主电源;Vcc2:备份电源。当Vcc2>Vcc1+0.2V时,由Vcc2向DS1302供电,当Vcc20;i--)//循环8次移位{SCLK=0;temp=addr;DIO=(bit)(temp&0x01);//每次传输低字节addr>>=1;//右移一位SCLK=1;}//发送数据for(i=8;i>0;i--){SCLK=0;temp=dat;DIO=(bit)(temp&0x01);dat>>=1;SCLK=1;}CE=0;}//数据读取子程序unsignedcharRead1302(unsignedcharaddr)文档来源为:从网络收集整理.word版本可编辑.欢迎下载支持.4{unsignedchari,temp,dat1,dat2;CE=0;SCLK=0;CE=1;//发送地址for(i=8;i>0;i--)//循环8次移位{SCLK=0;temp=addr;DIO=(bit)(temp&0x01);//每次传输低字addr>>=1;//右移一位SCLK=1;}//读取数据for(i=8;i>0;i--){ACC_7=DIO;SCLK=1;ACC>>=1;SCLK=0;}CE=0;dat1=ACC;dat2=dat1/16;//数据进制转换dat1=dat1%16;//十六进制转十进制dat1=dat1+dat2*10;return(dat1);}//初始化DS1302voidInitial(void){Write1302(WRITE_PROTECT,0X00);//禁止写保护Write1302(WRITE_SECOND,0x56);//秒位初始化Write1302(WRITE_MINUTE,0x34);//分钟初始化Write1302(WRITE_HOUR,0x12);//小时初始化Write1302(WRITE_PROT...