片机AT89C51芯片和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。与传统机械表相比,它具有走时精确显示直观等特点。它的计时周期为24小时,显满刻度为“23时59分59秒”,另外可通过三个按键实现清零、调小时、分钟的功能。该电子钟可以做到的功能:上电或按键复位后能自动显示系统默认时间“120000”进入时钟运行状态。
1
f《微机原理与接口技术》研究性专题基于51单片机的LED时钟设计学生作品
2系统总体设计流程
基于51单片机的LED时钟设计内容,包括有时钟运行程序的设计、Proteus的时钟模拟、实物时钟的电路连接三个主要部分。由中断产生的秒、分、小时数据,经转换子程序转换成适应LED显示屏显示的数据,并通过单片机的输出功能输入到LED显示屏,再通过显示扫描程序,显示出时钟的走时时间。用计时程序来完成计时,数时功能,再通过单片机综合控制将数字显示出来。同时,我们可以通过添加按键来进行时间的调节。
图21设计思路流程图
图22简易结构图
2
f《微机原理与接口技术》研究性专题基于51单片机的LED时钟设计学生作品
3时钟程序解析
31时、分、秒程序
设定初始时间12点00分00秒:MOV30H01HMOV31H02HMOV32H00HMOV33H00HMOV34H00HMOV35H00H
小时程序:XSMOV40H0FEH;设定初值MOVDPTRTAB;译码表地址MOVP240H;片选信号MOVA30H;装入偏移量MOVCAADPTR;查表程序MOVP0A;显示小时的十位LCALLYS1MS;延时MOVP00FFH;断开显示MOVA40H;RLA;片选小时的个位MOV40HAMOVP240HMOVA31HADDA0AH偏移MOVCAADPTRMOVP0ALCALLYS1MS分、秒与小时类似。
32按键程序
按键查询:
3
f《微机原理与接口技术》研究性专题基于51单片机的LED时钟设计学生作品
JNBP10P100;查询P100键是否按下,P100为清零键JNBP11P1000;查询P1000键是否按下,P1000为小时加1键JNBP12P10000;查询P10000键是否按下,P10000为分加1键全部清零:P100MOV30H00H
MOV31H00HMOV32H00HMOV33H00HMOV34H00HMOV35H00H30H35H全部置0小时加1、分钟加1:JIACLRTF0;清除中断标志MOVA35HCJNEA09HJIA1;查询是否进位MOV35H00H;进位恢复MOVA34HCJNEA05HJIA10;查询进位MOV34H00H;进位恢复P10000JNBP12P10000;查询按键是否按下MOVA33HCJNEA09HJIA100;调用子程序,调节分钟的个位MOV33H00HMOVA32HCJNEA05HJIA1000;调用子程序,调节分钟的十位MOV32H00HP1000JNBP11P1000;查询按键是否按下MOVA31HCJNEA09HJIA10000;调用子程序,调节小时的个位MOV31H00HMOVA30HCJNEA02HJIA100000;调用子程序,调节小时的十位r