书签 分享 收藏 举报 版权申诉 / 8

类型电子时钟.doc

  • 上传人:zhaohanshuan
  • 文档编号:74767479
  • 上传时间:2019-05-13
  • 格式:DOC
  • 页数:8
  • 大小:365KB
  • 配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    电子 时钟
    资源描述:

    电脑时钟程序实验
    一、实验目的:
    ⑴ 进一步掌握定时器/计数器的使用方法,
    ⑵ 了解、熟悉80C51综合性程序的编程方法
    二、实验内容:
    设计一单片机控制的时钟电路显示时、分、秒,24小时进制,具有校时功能。
    三、实验步骤:
    1、硬件电路如下:
    2、编程提示如下:
    2.1.定时器/计数器T0中断服务程序
    定时器/计数器T0用于时间计时。选择方式1,重复定时,定时时间设为50ms,定时时间到则中断,在中断服务程序中用一个计数器对50ms计数,计20次则对秒单元加1,秒单元加到60则对分单元加1,同时秒单元清0;分单元加到60则对时单元加1,同时分单元清0;时单元加到24则对时单元清0,标志一天时间计满。在对各单元计数的同时,把它们的值放到存储单元的指定位置。定时器/计数器T0中断服务程序流程图如下图:
    主程序流程图 定时器/计数器T0中断服务程序流程图
    2.2按键处理模块
    按键处理设置为:如没有按键,则时钟正常走时。当按下K0按键时,进入调分状态,时钟停止走动;按K1可K2按键可进行加1或减1操作;继续按K0键可分别进行分和小时的调整;最后按K0键将退出调整状态,时钟开始计时运行。
    3、编写程序如下:
    ORG 0000H
    LJMP START
    ORG 000BH ;定时器/计数器T0中断程序入口
    LJMP INTT0
    ;主程序
    START:MOV R0,#70H
    MOV R7,#0CH
    INIT: MOV @R0,#00H
    INC R0
    DJNZ R7,INIT
    MOV 72H,#10
    MOV 75H,#10
    MOV TMOD,#01H
    MOV TL0,#0B0H
    MOV TH0,#03CH
    SETB EA
    SETB ET0
    SETB TR0
    START1:LCALL SCAN
    LCALL KEYSCAN
    SJMP START1
    ;延时1MS子程序
    DL1MS:MOV R6,#14H
    DL1: MOV R7,#19H
    DL: DJNZ R7,DL
    DJNZ R6,DL1
    RET
    ;延时20MS子程序
    DL20MS:ACALL SCAN
    ACALL SCAN
    ACALL SCAN
    RET
    ;数码管显示程序
    SCAN: MOV A,78H ;时间存入显示缓冲区相应位置
    MOV B,#0AH
    DIV AB
    MOV 71H,A
    MOV 70H,B
    MOV A,79H
    MOV B,#0AH
    DIV AB
    MOV 74H,A
    MOV 73H,B
    MOV A,7AH
    MOV B,#0AH
    DIV AB
    MOV 77H,A
    MOV 76H,B
    MOV R1,#70H ;循环扫描显示
    MOV R5,#80H
    MOV R3,#08H
    SCAN1:MOV A,R5
    MOV P2,A
    MOV A,@R1
    MOV DPTR,#TAB
    MOVC A,@A+DPTR
    MOV P0,A
    MOV A,R5
    LCALL DL1MS
    INC R1
    MOV A,R5
    RR A
    MOV R5,A
    DJNZ R3,SCAN1
    MOV P2,#00H
    MOV P0,#0FFH
    RET
    TAB: DB 0C0H,0F9H,0A4H,0B0H,99H
    DB 92H,82H,0F8H,80H,90H,0BFH ;"0~9","-"的共阳极字段码
    ;定时器/计数器T0中断服务程序
    INTT0: PUSH ACC
    PUSH PSW
    CLR ET0
    CLR TR0
    MOV TL0,#0B0H
    MOV TH0,#03CH
    SETB TR0
    INC 7BH
    MOV A,7BH
    CJNE A,#14H,OUTT0
    MOV 7BH,#00
    INC 78H
    MOV A,78H
    CJNE A,#3CH,OUTT0
    MOV 78H,#00
    INC 79H
    MOV A,79H
    CJNE A,#3CH,OUTT0
    MOV 79H,#00
    INC 7AH
    MOV A,7AH
    CJNE A,#18H,OUTT0
    MOV 7AH,#00
    OUTT0:SETB ET0
    POP PSW
    POP ACC
    RETI
    KEYSCAN:CLR EA ;按键处理程序
    JNB P1.0,KEYSCAN0
    JNB P1.1,KEYSCAN1
    JNB P1.2,KEYSCAN2
    KEYOUT:SETB EA
    RET
    KEYSCAN0:LCALL DL20MS
    JB P1.0,KEYOUT
    WAIT0:JNB P1.0,WAIT0
    INC 7CH
    MOV A,7CH
    CLR ET0
    CLR TR0
    CJNE A,#03H,KEYOUT
    MOV 7CH,#00
    SETB ET0
    SETB TR0
    SJMP KEYOUT
    KEYSCAN1:LCALL DL20MS
    JB P1.1,KEYOUT
    WAIT1:JNB P1.1,WAIT1
    MOV A,7CH
    CJNE A,#02H,KSCAN11
    INC 79H
    MOV A,79H
    CJNE A,#3CH,KEYOUT
    MOV 79H,#00
    SJMP KEYOUT
    KSCAN11:INC 7AH
    MOV A,7AH
    CJNE A,#18H,KEYOUT
    MOV 7AH,#00
    SJMP KEYOUT
    KEYSCAN2:LCALL DL20MS
    JB P1.2,KEYOUT
    WAIT2:JNB P1.2,WAIT2
    MOV A,7CH
    CJNE A,#02H,KSCAN21
    DEC 79H
    MOV A,79H
    CJNE A,#0FFH,KEYOUT
    MOV 79H,#3BH
    SJMP KEYOUT
    KSCAN21:DEC 7AH
    展开阅读全文
    提示  文档分享网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:电子时钟.doc
    链接地址:https://www.wdfxw.net/doc74767479.htm
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    版权所有:www.WDFXW.net 

    鲁ICP备09066343号-25 

    联系QQ: 200681278 或 335718200

    收起
    展开