#include<reg51.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
data_7seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,};
uchar hour,min,sec;
sbit shi=P1^0;
sbit fen=P1^1;
sbit miao=P1^2;
sbit rst=P1^4;
sbit sck=P1^5;
sbit io=P1^6;
sbit fm=P1^7;
/*函数声明:*/
void write_ds1302_byte(uchar dat);
void write_ds1302(uchar add,uchar dat);
uchar read_ds1302(uchar add);
void read_rtc();
void set_rtc();
void display();
void delay(int n);
void show();
void fmzz();
/*DS1302单字节写入:*/
void write_ds1302_byte(uchar dat)
{ uchar i;
//发送地址
for(i=0;i<8;i++) //循环8次移位
{ sck=0;
io=dat&0x01; //每次传输低字节
dat=dat>>1; //右移一位
sck=1;
}
}
/*DS1302多字节写入:*/
void write_ds1302(uchar add,uchar dat)
{
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
data_7seg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,};
uchar hour,min,sec;
sbit shi=P1^0;
sbit fen=P1^1;
sbit miao=P1^2;
sbit rst=P1^4;
sbit sck=P1^5;
sbit io=P1^6;
sbit fm=P1^7;
/*函数声明:*/
void write_ds1302_byte(uchar dat);
void write_ds1302(uchar add,uchar dat);
uchar read_ds1302(uchar add);
void read_rtc();
void set_rtc();
void display();
void delay(int n);
void show();
void fmzz();
/*DS1302单字节写入:*/
void write_ds1302_byte(uchar dat)
{ uchar i;
//发送地址
for(i=0;i<8;i++) //循环8次移位
{ sck=0;
io=dat&0x01; //每次传输低字节
dat=dat>>1; //右移一位
sck=1;
}
}
/*DS1302多字节写入:*/
void write_ds1302(uchar add,uchar dat)
{