基于单片机数字时钟创新设计与实现.pdfVIP

  • 0
  • 0
  • 约7.65千字
  • 约 8页
  • 2026-01-08 发布于北京
  • 举报

基于单片机数字时钟创新设计与实现.pdf

二、设计内容

利用单片机的定时/计数器、中断系统、以及阵列键盘和LED显示器进行设计。在数

码管显示器上实现电子时钟,并且能够进行设置时间和暂停、启动控制。

使用定时/计数器T0,工作于定时模式,采用方式1,对12MHz的系统时钟进行定

时计数,初值设为C34F,形成定时时间为50ms。用片内RAM的7BH单元对50ms进

行计数,计满20次后使秒计数器7BH单元加1。当秒计数器加到60时,分计数器79

H单元加1;当分计数器加到60时,时计数器7AH单元加1;当时计数器加到24时,时

计数器。然后将秒、分、时计数器的值分别拆分为十位和个位,存入8个数码管的显

示缓冲区,并通过数码管显示出来。显示格式为:小时十位、小时个位--分十位、分个

位--秒十位、秒个位。在处理过程中加入了按键判断程序,能够对按键进行处理。

三、代码说明

;主程序

;对78~7B初始化00

72H、75H#10,这是时钟间隔的段选码

定时开始

;输出时间(动态显示)

;检测按键

;延时1MS子程序

DL1MS:MOVR6,#14H

DL1:MOVR7,#19H

DL2:DJNZR7,DL2

DJNZR6,DL1

RET

;延时20MS子程序

二、设计内容

利用单片机的定时/计数器,中断系统,以及阵列键盘和LED显示器进行设计。在数码

管显示器上实现电子时钟,并且能进行设置时间和暂停、启动控制。

用定时/计数器T0,工作于定时,采用方式1,对12MHZ的系统时钟进行定时计数,

初值设为C34F。形成定时时间为50ms。用片内RAM的7BH单元对50ms计数,计20次

产生秒计数器7BH单元加1,秒计数器加到60则分计数器79H单元加1,分计数器加到60

则时计数器7AH单元加1,时计数器加到24则时计数器清0。然后把秒、分、时计数器分

成十位和个位放到8个数码管的显示缓冲区,通过数码管显示出来。显示格式为小时十位、

小时个位分十位、分个位秒十位、秒个位。在处理过程中加上了按键判断程序,能对按

键处理。

三、代码说明

;主程序

START:MOVR0,#78H

MOVR7,#04H

INIT:MOV@R0,#00H

INCR0

DJNZR7,INIT;对78~7B初始化00

MOV72H,#10

MOV75H,#10;72H、75H=#10,这个是时钟间隔的段选码

MOVTMOD,#01H

MOVTL0,#0B0H

MOVTH0,#03CH;定时T0初始化

SETBEA

SETBET0;开启定时中断

SETBTR0;定时开始

START1:LCALLSCAN;输出时间(动态显示)

LCALLKEYSCAN;检测按键

SJMPSTART1

;延时1MS子程序

DL1MS:MOVR6,#14H

DL1:MOVR7,#19H

DL2:DJNZR7,DL2

DJNZR6,DL1

RET

;延时20MS子程序

DL20MS:ACALLSCAN

ACALLSCAN;实际上包括了对数码管的3次动态显示

RET

;数码管显示程

文档评论(0)

1亿VIP精品文档

相关文档