欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    单片机电子时钟设计.docx

    • 资源ID:15140038       资源大小:16.13KB        全文页数:15页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    单片机电子时钟设计.docx

    1、单片机电子时钟设计我这个用单片机+DS12C887时钟芯片 制作的不怕掉电的带按键声音的时钟。用的是数码管显示,你可以自己改成1602液晶显示。原理图不好上,直接上程序了。程序是我调试通过的,可直接用。有问题再联系我。#include#define uint unsigned int#define uchar unsigned charuchar code table= 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0;bit flag; sbit dscs=P35;sbit d

    2、swr=P36;sbit dsre=P37;sbit dsal=P31;sbit J1=P00;sbit J2=P01;sbit J3=P02;sbit J4=P03;sbit D=P30;char shi,fen,miao,temp,sett,setd,J2n,J3n;char dshi,dfen,dmiao;void delay(uchar);void display(char,char,char,char);void write_ds(uchar,uchar);uchar read_ds(uchar);void scakey();void settime();void dingshi()

    3、;void main() EA=1; EX0=1; dshi=read_ds(0x4e); dfen=read_ds(0x4f); dmiao=read_ds(0x50); / write_ds(0x0a,0x2f);/启动振荡器设置SQW端输出2HZ方波 / write_ds(0x0a,0x0f);/关闭振荡器 write_ds(0x0b,0x2e);/设置二进制模式,24小时模式,方波允许模式/ / write_ds(0x04,23);/ write_ds(0x02,59);/ write_ds(0x00,57); while(1) miao=read_ds(0x00); fen=read

    4、_ds(0x02); shi=read_ds(0x04); display(shi,fen,miao,0); scakey(); settime(); dingshi(); void delay(uchar z) uchar x,y; for (x=z;x0;x-) for(y=96;y0;y-);void display(char shi,char fen,char miao,char temp) /显示时间/ uchar x,y,z; z=1; x=shi/10; y=shi%10; if(temp=3&y=0&flag=1) y=16; if(temp=0&x=0) x=16; P0=t

    5、ablex; P2=0x7f; delay(z); P2=0xff; P0=tabley|0x80; P2=0xbf; delay(z); x=fen/10; y=fen%10; if(temp=2&y=0&flag=1) y=16; if(temp=0&x=0) x=16; P2=0xff;/显示小时/ P0=tablex; P2=0xdf; delay(z); P2=0xff; P0=tabley|0x80; P2=0xef; delay(z); x=miao/10; y=miao%10; if(temp=1&y=0&flag=1) y=16; P2=0xff;/显示分钟/ if(temp

    6、=0&x=0) x=16; P0=tablex; P2=0xf7; delay(z); P2=0xff; P0=tabley; P2=0xfb; delay(z); P2=0xff;/显示秒/ if(sett!=0) P0=tablesett+9; P2=0xfe; delay(z); P2=0xff; if(setd!=0) P0=table13; P2=0xfd; delay(z); P2=0xff; P0=tablesetd+9; P2=0xfe; delay(z); P2=0xff; P0=0xff;void write_ds(uchar adds,uchar date) dsal=1

    7、; dswr=1; dscs=0; P1=adds; dsal=0; dswr=0; P1=date; dswr=1; dsal=1; dscs=1;uchar read_ds(uchar adds) uchar num; dsal=1; dsre=1; dscs=0; P1=adds; dsal=0; dsre=0; P1=0xff; dsre=1; num=P1; dsal=1; dscs=1; return num;void scakey() J1=P00; if(J1=0) delay(5); if(J1=0) /display(1); / P1=0xfe; / D=0; / dela

    8、y(50); / D=1; sett+; while(J1=0) J1=P00; P0=0xff; J2=P01; if(J2=0) delay(5); if(J2=0) / display(2); / P1=0xfd; / D=0; / delay(50); / D=1; J2n+; while(J2=0) J2=P01; P0=0xff; J3=P02; if(J3=0) delay(5); if(J3=0) / display(3); / P1=0xfb; / D=0; / delay(50); / D=1; J3n+; while(J3=0) J3=P02; P0=0xff; J4=P

    9、03; if(J4=0) delay(5); if(J4=0) /display(4); /P1=0xf7; /D=0; /delay(50); /D=1; setd+; while(J4=0) J4=P03; P0=0xff; void settime() while(sett!=0) scakey(); display(shi,fen,miao,sett); switch(sett) case 1: if(J2n=1) J2n=0; miao+; if(miao=60) miao=0; if(J3n=1) J3n=0; miao-; if(miao=-1) miao=59; break;

    10、case 2: if(J2n=1) J2n=0; fen+; if(fen=60) fen=0; if(J3n=1) J3n=0; fen-; if(fen=-1) fen=59; break; case 3: if(J2n=1) J2n=0; shi+; if(shi=24) shi=0; if(J3n=1) J3n=0; shi-; if(shi=-1) shi=23; break; case 4: sett=0; break; default :break; write_ds(4,shi); write_ds(2,fen); write_ds(0,miao); void dingshi(

    11、) while(setd!=0) D=1; scakey(); display(dshi,dfen,dmiao,setd); switch(setd) case 1: if(J2n=1) J2n=0; dmiao+; if(dmiao=60) dmiao=0; if(J3n=1) J3n=0; dmiao-; if(dmiao=-1) dmiao=59; break; case 2: if(J2n=1) J2n=0; dfen+; if(dfen=60) dfen=0; if(J3n=1) J3n=0; dfen-; if(dfen=-1) dfen=59; break; case 3: if

    12、(J2n=1) J2n=0; dshi+; if(dshi=24) dshi=0; if(J3n=1) J3n=0; dshi-; if(dshi=-1) dshi=23; break; case 4: setd=0; break; default :break; write_ds(5,dshi); write_ds(3,dfen); write_ds(1,dmiao); write_ds(0x4e,dshi); write_ds(0x4f,dfen); write_ds(0x50,dmiao); void interrupt0() interrupt 0 D=0; read_ds(0x0c);


    注意事项

    本文(单片机电子时钟设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开