请问下,DS1302要用到纽扣电池,程序里面要怎么设置呢?
要操作什么呢?谢谢啦!
- void DS1302_Init(void)
- {
- RST = 0;
- SCK = 0;
- write_ds1302( 0x8E, 0x00 ); //关写保护
- write_ds1302( 0x90, 0xA7 ); //充电(1个二极管 + 8K电阻)
- write_ds1302( 0x8E, 0x80 ); //开写保护
- if( read_ds1302(0x81) & 0x80 )
- {
- set_time(&time);
- }
复制代码
write_ds1302(0x84, 0x12) ;就可以哇?
void Init_1302(void){//-设置1302的初始时间(2007年1月1日00时00分00秒星期一)
unsigned char f;
if(read_clock(0xc1) != 0xaa){
write_clock(0x8e,0x00);//允许写操作
write_clock(0x8c,0x07);//年
write_clock(0x8a,0x01);//星期
write_clock(0x88,0x01);//月
write_clock(0x86,0x01);//日
write_clock(0x84,0x00);//小时
write_clock(0x82,0x08);//分钟
write_clock(0x80,0x00);//秒
write_clock(0x90,0xa5);//充电
write_clock(0xc0,0xaa);//写入初始化标志RAM(第00个RAM位置)
for(f=0;f<60;f=f+2){//清除闹钟RAM位为0
write_clock(0xc2+f,0x00);
}
write_clock(0x8e,0x80);//禁止写操作
}
}
/**
我用的是杜洋的程序用着还行
谢谢你,我现在做一个项目,最后一个问题就是DS1302断电后,可以继续读出时钟!我想问下,设置24小时制的时候,要怎么设置哇?顺便告诉我一下,谢谢啦!
你好,我在向DS1302中写入时间的时候,写入的是12点,没有对那个位怎么操作,过了12点,用串口调试助手打印出来,到了1点的时候,是13点。说明我向1其写入0~12点是,24小时制的吧!
一周热门 更多>