版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
DS1302设计的可调万年历(实测正常附有程序)(本制作所用数码管全为共阳数码管)我刚开始想做万年历的时候是上网找别人的程序,可是发现找了不少都不理想,要不就没日历和时间一起显示,要不就不能调时间的,后来我研究了两天,自己终于把程序编了出来。好了,废话我就不多说,本制作我已经把实物做了出来,保证没问题!下面附有仿真图和实物图。拍摄的效果不够好,但实物是不错的,本人实物中用三级管代替了仿真图的74HC04非门,用哪个都是可以的……请注意:本程序分两个C文件的,如果不会编,可以Q我:1107588997我直接发程序过去给你……软件源程序:(初始化程序只在开始时用一次,之后要把它屏蔽掉)#include#include#includeucharwrite_add[7]={0某8c,0某8a,0某88,0某86,0某84,0某82,0某80};ucharread_add[7]={0某8d,0某8b,0某89,0某87,0某85,0某83,0某81};voidwrite_dl302_byte(uchardat){uchari;for(i=0;i<8;i++){ck=0;io=dat&0某01;dat=dat>>l;ck=l;}}voidwrite_dl302(ucharadd,uchardat){rt=0;_nop_();ck=0;_nop_();rt=l;_nop_();write_dl302_byte(add);write_dl302_byte(dat);rt=0;_nop_();io=l;ck=l;}ucharread_dl302(ucharadd){uchari,value;rt=0;_nop_();ck=0;_nop_();rt=l;_nop_();write_dl302_byte(add);for(i=0;i<8;i++){value=value>>l;ck=0;if(io)value=value10某80;ck=l;}rt=0;_nop_();ck=0;_nop_();ck=l;io=l;returnvalue;}voidread_rtc(void){uchari;(voidmain(){//zicheng某u.c#defineDUANlP2#defineDUAN2P3#defineWEIP0#defineuintunignedintftdefineucharunignedcharbitck=Pl1;bitio=P10;bitrt=Pl2;bitkl=Pl4;bitk2=Pl5;bitk3=Pl6;bitk4=Pl7;ucharhi,fen,miao,nian,yue,ri,某i,menu,y;unignedcharcodequan[]={0某cO,0某f9,0某a4,0某bO,0某99,0某92,0某82,0某f8,0某80,0某90);voidwrite_dl302_byte(uchardat);voidwrite_dl302(ucharadd,uchardat);ucharread_dl302(ucharadd);voiddiplay(void);voidbutton(void);voiddelay(uintz){uchar某,y;for(某二z;某〉0;某一)for(y=110;y>0;y一);}/某(voidInit_DS1302(void)〃初始化{write_dl302(0某8e,0某00);write_dl302(0某80,0某00);write_dl302(0某82,0某20);write_dl302(0某00);write_dl302(0某82,088,0某8c,0某c0,0某09);write_dl302(0某88,0某8c,0某c0,0某12);write_d1302(0某8a,0某06);write_dl302(0某10);write_dl302(0某90,0某01);write_dl302(0某f0);write_dl302(0某8e,0某80);}某/voiddiplay(void){WEI=0;DUANl=quan[2];if(menu==3&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN2=0某ff;}e1eDUAN2=quan[hi/10];delay(2);DUAN>0某ff;DUAN2=0某ff;WEI=1;DUANl=quan[0];if(menu==3&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN2=0某ff;}e1eDUAN2=quan[hi];delay(2);DUAN1=O某ff;DUAN2=0某ff;WEI=2;if(menu==7&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN1=O某ff;}e1eDUANl=quan[nian/10];if(menu=2&&y〈80&&kl!二0&&k2!二0&&k3!二0&&k4!二0){DUAN2=0某ff;}eleDUAN2=quan[fen/10];delay(2);DUAN>0某ff;DUAN2=0某ff;WE>3;if(menu=7&&y〈80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUANl=0某ff;}eleDUANl=quan[nian];if(menu=2&&y〈80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN2=0某ff;}eleDUAN2=quan[fen];delay(2);DUAN>0某ff;DUAN2=0某ff;WEI=4;if(menu=6&&y〈80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUANl=0某ff;}eleDUANl=quan[yue/10];if(menu=l&&y〈80&&kl!二0&&k2!二0&&k3!二0&&k4!二0){DUAN2=0某ff;}eleDUAN2=quan[miao/10];delay(2);DUAN1=O某ff;DUAN2=0某ff;WEI=5;if(menu==6&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN1=O某ff;}eleDUANl=quan[yue];if(menu==l&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN2=0某ff;}eleDUAN2=quan[miao];delay(2);DUAN1=O某ff;DUAN2=0某ff;WEI=6;if(menu==5&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN1=O某ff;}eleDUANl=quan[ri/10];DUAN2=0某ff;delay(2);DUAN1=O某ff;WEI=7;if(menu==5&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN1=O某ff;}eleDUANl=quan[ri];if(menu==4&&y<80&&kl!=0&&k2!=0&&k3!=0&&k4!=0){DUAN2=0某ff;}eleDUAN2=quan[某i];delay(2);DUAN1=O某ff;DUAN2=0某ff;}voidbutton(void){if(k4-0){delay(10);if(k4-0){menu++;if(menu>=8){menu=0;}while(!k4){diplay();}}}if(menu~l){if(k2-0){delay(10);if(k2~0){miao++;if(miao—60){miao=0;}while(!k2){diplay();}}}if(k3—0){delay(10);if(k3==0){miao--;if(miao==255){miao=59;}while(!k3){diplay0;}}}write_d1302(0某8e,0某00);write_dl302(0某80,miao/10某16+miao);write_dl302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu==2){if(k2==0){delay(10);if(k2==0){fen++;if(fen==60){fen=0;}while(!k2){diplayO;}}}if(k3—0){delay(10);if(k3==0){fen-if(fen==255){fen=59;}while(!k3){diplay();}}}write_dl302(0某8e,0某00);write_d1302(0某82,fen/10某16+fen);write_dl302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu-3){if(k2—0){delay(10);if(k2—0){hi++;if(hi—24){hi=0;}while(!k2){diplay();}}}if(k3—0){delay(10);if(k3==0){hi--;if(hi—255){hi=23;}while(!k3){diplay();}}}write_dl302(0某8e,0某00);write_dl302(0某84,hi/10某16+hi);write_dl302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu==4){if(k2==0){delay(10);if(k2==0){某i++;if(某i=8){某i=l;}while(!k2){diplay();}}}if(k3-0){delay(10);if(k3=二0){某i一;if(某i=0){某i=7;}while(!k3){diplay0;}}}write_dl302(0某8e,0某00);write_dl302(0某8a,某i/10某16+某i);write_dl302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu—5){if(k2"0){delay(10);if(k2==0){ri++;if(ri==32){ri=1;}while(!k2){diplay();}}}if(k3-0){delay(10);if(k3—0){ri--;if(ri-0){ri=31;}while(!k3){diplay();}}}write_dl302(0某8e,0某00);write_dl302(0某86,ri/10某16+ri);write_dl302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu==6){if(k2==0){delay(10);if(k2==0){yue++;if(yue==13){yue=l;}while(!k2){diplay();}}}if(k3==0){delay(10);if(k3=0){yue—;if(yue==0){yue=12;}while(!k3){diplay();}}}write_dl302(0某8e,0某00);write_dl302(0某88,yue/10某16+yue);write_d1302(0某8e,0某80);y++;if(y>=160){y=0;}}if(menu-7){if(k2==0){delay(10);if(k2==0){nian++;if(nian==100){nian=0
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/CSPIA 005-2021公共安全视频图像分析多算法应用技术要求
- T/YYHG 0006-2023注射剂配液分配自控系统实施规范
- T/HAEPCI 45-2022农田土壤重金属污染修复与管控方案编制规范
- T/CIE 207-2024Linux操作系统内核接口调用参考规范
- T/CAOE 47-2023大洋多金属结核资源量估算技术指南
- T/CSAE 465-2025乘用车智能底盘矢量控制及舒适加减速控制道路测试方法
- 2025-2026学年黑龙江省鸡西市初中数学九年级期末上册模考能力提升卷详细参考解析
- PHP 初级面试题及详细答案(真实企业版)
- 2026年教育系统后备干部笔试试题及答案
- PET-CT物理师专业考核试题及详细答案
- 可压缩流体管道阻力降计算表
- 分布式光伏发电系统建设规范
- 企业商业秘密保护技术应用调研报告
- 物业服务满意度调研问卷设计
- 汽轮机运行值班员技能鉴定理论考试题库(浓缩400题)
- 2025-2026月考试卷八年级数学第一次月考卷(江苏无锡专用苏科版)(考试版A4)
- 《物业设备设施管理(第2版)》-第二章
- 儿童焦虑量表(RCMAS)
- 2026年4月自考13215Java语言程序设计试题试题及答案
- 2026年发布《中国尖锐湿疣临床诊疗指南》解读
- 律师事务所内部培训制度
评论
0/150
提交评论