Ds1302
#include<reg52.h>
#include<intrins.h>
#include "ds1302.h"
extern uchar clk_xian1[]; //存放時鐘的數據
extern uchar clk_xian2[];
uchar time[] ={12,3,28,17,46,30};
uchar write_add[] ={0x8c,0x88,0x86,0x84,0x82,0x80}; //年月日時分秒的地址(寫)
uchar read_add [] ={0x8d,0x89,0x87,0x85,0x83,0x81}; //年月日時分秒的地址(讀)
void write_byte(uchar dat)
{
uchar
i;
for(i=0;i<8;i++)
{
clk=0;
io=dat&0x01;
dat=dat>>1; //從數據的低位開始寫
clk=1;
}
}
void write(uchar add,uchar date)
{
rst=0;
_nop_();
clk=0;
_nop_();
rst=1;
_nop_();
write_byte(add);
write_byte(date);
rst=0;
_nop_();
clk=1;
io=1;
}
uchar read(uchar addr)
{
uchar
i,temp;
rst=0;
|