第 1 页 共 20 页 基于单片机的简易电子时钟设计 一 功能分析 1).时制式为24 小时制。 2).采用LED 数码管显示时、分,秒采用数字显示。 3).具有方便的时间调校功能。 4).计时稳定度高,可精确校正计时精度。 二 总体方案设计论证比较 2 .1 实现时钟计时的基本方法 利用MCS-51 系列单片机的可编程定时/计数器、中断系统来实现时钟计数。 (1) 计数初值计算: 把定时器设为工作方式1,定时时间为50ms,则计数溢出20 次即得时钟计时最小单位秒,而100 次计数可用软件方法实现。 假设使用T/C0,方式1,50ms 定时,fosc=12MHz。 则初值X 满足(216-X)×1/12MHz×12μs =50000μs X=15536→0011110010110000→3CB0H (2) 采用中断方式进行溢出次数累计,计满20 次为秒计时(1 秒); (3) 从秒到分和从分到时的计时是通过累加和数值比较实现。 2 .2 电子钟的时间显示 电子钟的时钟时间在六位数码管上进行显示,因此,在内部 RAM 中设置显示缓冲区共8 个单元。 LED8 LED7 LED6 LED5 LED4 LED3 LED2 LED1 37H 36H 35H 34H 33H 32H 31H 30H 时十位 时个位 分隔 分十位 分个位 分隔 秒十位 秒个位 第 2 页 共 20 页 2 .3 电子钟的时间调整 电子钟设置3 个按键通过程序控制来完成电子钟的时间调整。 A 键调整时; B 键调整分; C 键复位 2 .4 总体方案介绍 2 .4 .1 计时方案 利用AT89S51 单片机内部的定时/计数器进行中断时,配合软件延时实现时、分、秒的计时。该方案节省硬件成本,且能使读者在定时/计数器的使用、中断及程序设计方面得到锻炼与提高,对单片机的指令系统能有更深入的了解,从而对学好单片机技术这门课程起到一定的作用。 2 .4 .2 控制方案 AT89S51 的P0 口和 P2 口外接由八个LED 数码管(LED8~LED1)构成的显示器,用P0 口作 LED 的段码输出口,P2 口作八个LED 数码管的位控输出线,P1 口外接四个按键A、B、C 构成键盘电路。 AT89S51 是一种低功耗,高性能的CMOS 8 位微型计算机。它带有 8K Flash 可编程和擦除的只读存储器(EPROM),该器件采用ATMEL 的高密度非易失性存储器技术制造,与工业上标准的80C51 和 80C52 的指令系统及引脚兼容,片内Flash 集成在一个芯片上,可用与解决复杂的问题,且成本较低。简易电子钟的功能不复杂,采用其现有的I/O 便可完成,所以本设计中采用此的设计方案。 三 硬...