程序 //main.c//
#include
#define uint unsigned int #include\#include\#include\sbit k4=P1^3; char k=0;
char shi,fen,miao,nian,yue,ri; char
baojingshi=0x00,baojingfen=0x06,baojingmiao=0x00;
void sjdisplay(); void rqdisplay(); void baojingdisplay(); void delay(uint ms);
void display(char shu,char wei);
char table[]={0xc0,0xf9,0xa4,0xb0, 0x99,0x92,0x82,0xf8, 0x80,0x90,0x88,0x83, 0xc6,0xa1,0x86,0x8e}; void main() {
ds1302_write(0x80,0x55); ds1302_write(0x82,0x45); ds1302_write(0x84,0x00); ds1302_write(0x8c,0x11); ds1302_write(0x88,0x10); ds1302_write(0x86,0x07); while(1) {
if(k4==0)
{
delay(5); if(k4==0) {
while(k4==0); k++; if(k==3) { k=0; } } } if(k==0) sjdisplay(); if(k==1) rqdisplay(); if(k==2)
baojingdisplay();
if((shi==baojingshi)&&(fen==baojingfen)&(miao==baojingmiao)) {
didi(10); } key(); } }
void sjdisplay() {
shi=ds1302_read(0x85);//hour fen=ds1302_read(0x83);//minites miao=ds1302_read(0x81);//second display((shi>>4)&0x07,0); display(shi&0x0f,1);
display((fen>>4)&0x07,3); display(fen&0x0f,4);
display((miao>>4)&0x07,6); display(miao&0x0f,7); }
void rqdisplay() {
nian=ds1302_read(0x8d);//nian yue=ds1302_read(0x89);//yue ri=ds1302_read(0x87);//ri display((nian>>4)&0x07,0); display(nian&0x0f,1); display((yue>>4)&0x07,3); display(yue&0x0f,4);
display((ri>>4)&0x07,6);//0000 0111
搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新高中教育电子万年历毕业设计(基于AT89C51单片机和DS1302时钟芯片) (6)全文阅读和word下载服务。
相关推荐: