版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include#define uchar unsigned char#define uint unsigned intuchar code table= 2012-02-29 MON;uchar code table1= 23:59:55;uchar num,count,shi,fen,miao,nian,yue,ri,xingqi,s1num,flag;sbit lcden=P25; sbit lcdrs=P10;sbit lcdrw=P11;sbit s1=P30;sbit s2=P31;sbit s3=P32;sbit s4=P33;sbit feng=P23;/*延迟函数*/void
2、 delay(uint z)uint x,y;for(x=z;x0;x-)for(y=110;y0;y-);/*写命令*/void write_com(uchar com)lcdrs=0;lcdrw=0; P0=com;lcden=1; delay(5);lcden=0;/*写数据*/void write_data(uchar date)lcdrs=1;lcdrw=0;P0=date;lcden=1;delay(5);lcden=0;/*时分秒调节函数*/ void write_sfm(uchar add,uchar date) uchar shi,ge;shi=date/10;ge=date
3、%10;write_com(0x80+0x40+add);write_data(0x30+shi);write_data(0x30+ge); /*年月日调节函数*/ void write_nyr(uchar ad,uchar dat) uchar shi,ge;shi=dat/10;ge=dat%10;write_com(0x80+0x00+ad);write_data(0x30+shi);write_data(0x30+ge); /*星期显示函数*/ void display_week() switch (xingqi) case 1: write_data(M); write_data(O
4、); write_data(N); write_com(0x80+0x00+14); break; case 2: write_data(T); write_data(U); write_data(E); write_com(0x80+0x00+14); break;case 3: write_data(W); write_data(E); write_data(D); write_com(0x80+0x00+14); break;case 4: write_data(T); write_data(H); write_data(U); write_com(0x80+0x00+14); brea
5、k; case 5: write_data(F); write_data(R); write_data(I); write_com(0x80+0x00+14); break; case 6: write_data(S); write_data(A); write_data(T); write_com(0x80+0x00+14); break; case 7: write_data(S); write_data(U); write_data(N); write_com(0x80+0x00+14); break;void keycan() /*光标左移*/if(s1=0)delay(5);if(s
6、1=0) s1num+;while(!s1);if(s1num=1)TR0=0;write_com(0x80+0x40+11);write_data();write_com(0x80+0x40+10);/光标重新回到闪烁点,写光标地址同样加一write_com(0x0f); /光标闪烁 if(s1num=2) write_com(0x80+0x40+11);write_data( );write_com(0x80+0x40+8);write_data();write_com(0x80+0x40+7);if(s1num=3) write_com(0x80+0x40+8);write_data(:
7、);write_com(0x80+0x40+5);write_data();write_com(0x80+0x40+4); if(s1num=4) write_com(0x80+0x40+5);write_data(:);write_com(0x80+15);write_data();write_com(0x80+14);if(s1num=5) write_com(0x80+15);write_data( );write_com(0x80+11);write_data();write_com(0x80+10); if(s1num=6) write_com(0x80+11);write_data
8、( );write_com(0x80+8);write_data();write_com(0x80+7); if(s1num=7) write_com(0x80+8);write_data(-);write_com(0x80+5);write_data();write_com(0x80+4); if(s1num=8)s1num=0;write_com(0x80+5);write_data(-);write_com(0x0c);TR0=1; /*光标右移*/ /* if(s2=0)delay(5);if(s2=0) s1num-;while(!s2);if(s1num=1)TR0=0;write
9、_com(0x80+0x40+11);write_data();write_com(0x80+0x40+11);/光标重新回到闪烁点,写光标地址同样加一write_com(0x0f); /光标闪烁 if(s1num=2) write_com(0x80+0x40+11);write_data( );write_com(0x80+0x40+8);write_data();write_com(0x80+0x40+8);if(s1num=3) write_com(0x80+0x40+8);write_data(:);write_com(0x80+0x40+5);write_data();write_c
10、om(0x80+0x40+5); if(s1num=4) write_com(0x80+0x40+5);write_data(:);write_com(0x80+15);write_data();write_com(0x80+15);if(s1num=5) write_com(0x80+15);write_data( );write_com(0x80+11);write_data();write_com(0x80+11); if(s1num=6) write_com(0x80+11);write_data( );write_com(0x80+8);write_data();write_com(
11、0x80+8); if(s1num=7) write_com(0x80+8);write_data(-);write_com(0x80+5);write_data(29&flag=1)/当为闰年时,如果ri=30,但是月份已经加到2,这种情况ri必须等于29 ri=29; write_nyr(9,ri); if(yue=2&ri28&flag=0) /当为平年时,如果ri=30,但是月份已经加到2,这种情况ri必须等于28 ri=28; write_nyr(9,ri); if(yue=4|yue=6|yue=9|yue=11)&(ri=31|ri=29|ri=28) ri=1; write_n
12、yr(9,ri); if(yue=13) yue=1; nian+; if(nian%40) write_nyr(9,28); write_nyr(3,nian); write_nyr(6,yue); write_com(0x80+0x00+7);if(s1num=7) nian+; if(nian=100) nian=0; flag=0; if(nian%4=0) flag=1; write_nyr(3,nian); write_com(0x80+0x00+4);/*按键减*/if(s4=0)delay(5);if(s4=0)while(!s4);if(s1num=1)miao-;if(mi
13、ao=-1)miao=59;write_sfm(9,miao);write_com(0x80+0x40+10);if(s1num=2)fen-;if(fen=-1)fen=59;write_sfm(6,fen);write_com(0x80+0x40+7);if(s1num=3)shi-;if(shi=-1)shi=23;write_sfm(3,shi);write_com(0x80+0x40+4);if(s1num=4)xingqi-; if(xingqi=0)xingqi=7;write_com(0x80+0x00+12); display_week();if(s1num=5)ri-; i
14、f(ri=0&(yue=1|yue=3|yue=5|yue=7|yue=8|yue=10|yue=12) ri=30; /防止当yue=12时,当yue减到11时,ri任然等于31时这种不允许情况出现 yue-; if(yue=2) if(flag=1) ri=29; else ri=28; write_nyr(6,yue); if(yue=0) yue=12; ri=31; write_nyr(9,ri); write_nyr(6,yue); if(ri=0&(yue=4|yue=6|yue=9|yue=11) ri=31;/按下减小按钮,yue减到3或5或8或10,为大月 yue-; wr
15、ite_nyr(6,yue); if(flag=1) /闰年标志位 if(ri=0&yue=2) ri=29;yue-; write_nyr(6,yue); if(flag=0) /平年标志位 if(ri=0&yue=2) ri=28; yue-; write_nyr(6,yue); write_nyr(9,ri); write_com(0x80+0x00+10);if(s1num=6) yue-; if(yue=2&ri29&flag=1) ri=29; write_nyr(9,ri); if(yue=2&ri28&flag=0) ri=28; write_nyr(9,ri); if(yue
16、=0) yue=12; nian-; write_nyr(3,nian); write_nyr(6,yue); if(yue=4|yue=6|yue=9|yue=11)&(ri=31|ri=29|ri=28) ri=1; write_nyr(9,ri); write_com(0x80+0x00+7); if(s1num=7) nian-;if(nian=-1)nian=99;flag=0; /清除标志位if(nian%4=0) flag=1; write_nyr(3,nian);write_com(0x80+0x00+4); /*初始化*/void init()write_com(0x38);
17、write_com(0x0c);write_com(0x06);write_com(0x01); write_com(0x80+0x00); for(num=0;num15;num+)write_data(tablenum);delay(5); write_com(0x80+0x40);for(num=0;num11;num+)write_data(table1num);delay(5); shi=23; fen=59; miao=55; xingqi=1; ri=29; yue=2; nian=12; if(nian%4=0) flag=1; TMOD=0x01; TH0=(65536-50
18、000)/256; TL0=(65536-50000)%256; EA=1; ET0=1; TR0=1; /*主函数*/ void main() init();/初始化 while(1) keycan(); /*启动定时器*/void timer() interrupt 1 TH0=(65536-50000)/256; TL0=(65536-50000)%256;count+; if(count=18) count=0; miao+; if(miao=60) miao=0;fen+; if(fen=60) fen=0; feng=0; delay(500); feng=1; shi+; if(shi=24) shi=0; ri+; xingqi+; if(xingqi=8) xingqi=1; write_com(0x80+0x00+12); display_week(); if(ri=32&(yue=1|yue=3|yue=5|yue=7|yue=8|yue=10|yue=12) ri=1; yue+; if(yue=13) yue=1; nian+; if(nian=99) nian=0; if(nian%4=0) flag=1;f
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 开题报告:信息化思维教学的理论构建与实证研究
- 开题报告:新时代老年教育服务体系建设研究
- 《灯具接地规定检测》课件
- 武汉某双塔单跨钢箱梁悬索桥基础施工组织设计
- 广东衡水金卷2025届高三12月联考 语文答案
- 呼吸道苛养菌耐药机制及检测课件
- 2024与送气签订合同
- 2024年工业设备销售协议范例版B版
- 中考地理总复习专题17 中国的疆域、人口和民族(梯级进阶练)(解析版)
- 2024年度储藏室产权交易标准协议版A版
- 签垫资合同范例
- 二零二四年度商务考察及交流合同
- 《中小学校园食品安全和膳食经费管理工作指引》专题讲座
- GB/T 12996-2024电动轮椅车
- 【初中地理】天气与天气预报教学课件-2024-2025学年七年级地理上册(湘教版2024)
- 浙教版(2023)小学信息技术五年级上册第7课《分支结构》说课稿及反思
- 糖尿病合并骨质疏松
- 考研计算机学科专业基础(408)研究生考试试卷及答案指导(2024年)
- 【初中生物】脊椎动物-鱼课件2024-2025学年人教版生物七年级上册
- 可爱卡通风幼儿园家长会(幼儿园教育理念与教学内容)
- 智慧水产养殖解决方案
评论
0/150
提交评论