51单片机制作的六位数显多路定时电子钟

发布者:VS821001最新更新时间:2011-10-17 关键字:51单片机  定时电子钟 手机看文章 扫描二维码
随时随地手机看文章

这里介绍的电子钟,电路可称得上极简,它仅使用单片的20引脚单片机完成电子钟的全部功能,而笔者见到的其它设计方案均采用二片以上的多片IC实现。
 一片20引脚的单片机STC2032(引脚排列与AT89C2051完全相同)为电子钟主体,其显示笔画数据从P1口分时输出,P3口则输出对应的六位选通信号。由于LED数码管点亮时耗电较大,故不能使用AT89C2051单片来完成,但是可以可以用STC89C2032来完成。另外,本站制作时用超高亮的发光二极管代替昂贵的大数码管,成本低,效果独特。

本电子钟设计有三个轻触式按键,这里我们分别命名为:模式设定键K1、加调整键K2、减调整键K3。由于STC89C2032内部已经集成有复位电阻,所以,复位脚只需要接一只电容即可。本电子钟采用了一只NPN型的三极管及蜂鸣器为闹时讯响电路。本图采用电池供电,电路板上有桥式整流、滤波和三端稳压器7805的安装位置,可以用交流电压供整个系统工作。此电子钟可与任何6~12V/100mA的交直流电源适配器配合工作,适应性强。

电子钟功能

1.走时:默认为走时状态,按24小时制分别显示“时时:分分:秒秒”,有四个秒点动态显示,时间会按实际时间以秒为最少单位变化。

2.走时调整:长按K1(或K2、K3)两秒钟以上,时位、分位、秒位会有其一快速闪动,按K1会循环,按K2和K3可以分别对闪动的数字进行加或者减,从而达到快速设定时间的目的。20秒以上长时间没有任何按键操作时,自动按变为正常走时状态。

3.闹时调整:再次长按K1(或K2、K3)两秒钟以上,时位、分位、秒位会有其一慢速闪动,按K1会循环,按K2和K3可以分别对闪动的数字进行加或者减,从而达到快速设定闹时的目的。20秒以上长时间没有任何按键操作时,自动按变为正常走时状态。
注意:闹时状态下时位会在01-64变化,表示64路定时时间;分位只能在00-24变化,表示24个小时,其中默认显示为24,表示不闹;秒位在00-59变化,表示60个分钟。因此,本电子钟以分钟为最小单位可以设定多路闹时。(由于64路太多,基本上没有什么用,用起来反而不方便,所以,本站出售的是16路定时的。)

4.误差修正状态:大家知道,即便是世界上最优良正统的石英晶振,频率也会有偏差,需要电容微调校正频率,不同的电容和负载会影响到频率偏移。这种情况可能会使日误差达到几十秒。当然,配备优质正品元件会使走时误差小到几秒,如果设计微调电容的话,就可以使每天的走时误差小到1秒以内。
但是,对于业余制作来说,没有更标准的测量设备来证明你的调试是刚刚好,不能测周期,不能测频率(普通的测量会改变电路工作参数带来更大的测量误差)。而我们一般都会按电视台的时间来做对比,经过了24小时,我的电子钟究竟是快了??还是慢了??
现在不用怕了,本电子钟设计了误差校正程序:如果你的电子钟走一天会快1.6秒(或者慢0.8秒),那么,通过本电子钟的误差校正设置,可以在一天中不知不觉的减慢1.6秒(或者加快0.8秒)。因此,本电子钟理论上可以做到日误差小于0.2秒,当然,具体的过程和效果还需要大家去操作和证明。
误差校正方法:在闹时调整状态下,再长按K1(或K2、K3)两秒钟以上,时位、分位会变成“一一一一”或者“三三三三”,表示变慢或者变快的意思,按K1选择;秒位会变成00,按K2、K3会在00-80中变化,数字越大,表示校正越大,00等于即不校正变快也不校正变慢,例如2+0=2-0这样的情况。20秒以上长时间没有任何按键操作时,自动按变为正常走时状态。
其它功能:
1、如果是在走时状态,正逢到在闹铃响(会长响20秒)中,按K1、K2、K3任意键停止发声。
2、在走时状态,按K3可以让电子钟每秒都发出短短的“嘀”声,这有点类似机械指针式的电子钟(或者机械手表)的声音,当然,声音要大得多。这个功能很有用,例如,我们有些特殊情况时不能去看着钟,但是可以闭上眼睛听声音在心中默默数数经过了多少秒再去操作某某。再按可以关掉秒发声。
3、整点报时功能:按K2可以开启和关闭整点报时功能。开启后每逢整点就会听到长响两秒“嘀”声。
4、闹时开关功能:按K1可以开启和关闭定时闹铃功能。关闭闹铃后,以前设置的数据不会丢失。


由于电路设计得极其简单,因此丰富的功能只能由软件完成,这里软件设计成为了关键。下面介绍软件设计中采用的一些要点。

本电子钟程序设计时只使用了一个定时数T0,其它的中断全部关断,定时器工作在两个8位自动加载初始值状态。这是保证走时精确稳定的重要方法。站长看到很多书本教材上都让大家用定时器中断来执行动态显示程序和按键扫描程序,这是一种很不好的方法,除了浪费硬件资源以外,还会增加程序复杂性,还会影响其它程序运行。
站长认为,越是中断程序,就要越写得简短,最好几条指令就立即结束,对于动态扫描显示、按键功能等等可以写在主程序中让程序不停的反复运行,如果中断多,最大的坏处就是影响到主程序运行时间不够,扫描显示会出现闪烁,或者按键反应变慢(一般觉察不出),可是,这又有另一好处,你可以随时改良程序并且立即看到结果。
LED动态扫描显示是分时点亮各个LED,利用人的视觉暂留特性,让人觉得是连续点亮。当点亮的频率高时,说明单片机有充足的时间运行主程序, 


关键字:51单片机  定时电子钟 引用地址:51单片机制作的六位数显多路定时电子钟

上一篇:基于单片机的恒温水龙头设计
下一篇:非接触式IC卡节水控制器的设计与实现

推荐阅读最新更新时间:2024-03-16 12:43

什么是单片机_51单片机学前预备知识
  一、单片机的概念:   二、单片机的用途:   工业自动化:数据采集,测控技术;   智能仪器仪表:数字示波器、数字信号源、数字万用表、感应电流表等;   消费类电子产品:洗衣机、电冰箱、空调机、手机等;   凡是与控制或简单计算有关的电子设备都可以用单片机来实现,再根据具体实际情况选择不同性能的单片机,如:atmel,stc,pic,avr,凌阳,80C51,arm等。   三、怎么学单片机:   实践第一;补充必要的理论知识,即缺什么补什么;做工程项目积累经验。(可在网络上搜索些题目,也可自己有什么想法大胆的去试验。)。   四、为什么选择51单片机作为单片机学习的入门:   学51单片机成本低,而且51单片机技术最成
[单片机]
51单片机心形灯——实现从左到右顺时针流水编程
心形灯原理图 编译软件:Keil uVision5 (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343174) 单片机程序下载软件:STC-ISP (如有需要可点此链接下载:https://download.csdn.net/download/qq_36931762/11343157) 程序代码: #include reg51.h #include intrins.h unsigned char code table ={0xfe, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7f}; unsigned
[单片机]
<font color='red'>51单片机</font>心形灯——实现从左到右顺时针流水编程
基于51单片机的TFT液晶显示设计
0 引言   51单片机作为一种常见的通用单片机, 虽然其内部资源, 处理速度等都无法与新型高速单片机相提并论, 但其低廉的价格, 极低的入门难度以及适用于简单场合应用等特点, 依然是开发者的常用选择之一。   用51单片机驱动液晶模块通常都使用1602和12864等极为简单的液晶模块, 这里介绍用51单片机驱动QVGA分辨率的TFT液晶模块, 以实现彩色和更为复杂的内容显示的方法。同时, 本文还将使用DS1302芯片和DS18B20芯片来实现在液晶屏上显示实时时钟和温度。    1 硬件设计   本系统硬件电路的设计主要包括单片机最小系统电路, TFT液晶显示电路, 时钟电路, 设置电路以及温度采集电路。其系统工作原理框
[单片机]
基于<font color='red'>51单片机</font>的TFT液晶显示设计
51单片机STC89C52】舵机控制综合篇
一、项目概述 1、功能描述 超声波模块,震动传感器,按键控制SG90舵机 检测靠近时,垃圾桶自动开盖并伴随滴一声, 2 秒后关盖 发生震动时,垃圾桶自动开盖并伴随滴一声, 2 秒后关盖 按下按键时,垃圾桶自动开盖并伴随滴一声, 2 秒后关盖 2、硬件部分 SG90舵机,超声波模块,震动传感器,蜂鸣器 3、接线说明 舵机(PWM)信号线 — P1.1(定时器0) 超声波HC-SR04 Trig — P1.5 、Echo — P1.6 (定时器1) 震动传感器 — P3.2(外部中断0) 蜂鸣器 — P2.0 二、基础参考 【51单片机STC89C52】定时器(中断)控制LED 【51单片机STC89C52】IO
[单片机]
【<font color='red'>51单片机</font>STC89C52】舵机控制综合篇
51单片机pwm调制 产生多路分频信号 倍频
P1口各口输出频率不同的PWM信号,且P1.1口的PWM波周期是P1.0口的两倍,P1.2口PWM周期是P1.1的两倍,以此类推 单片机源程序如下: /*----------------------------------------------- 名称:定时器0 修改:无 内容:通过定时产生不同频率方波 ------------------------------------------------*/ #include reg52.h //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 /*------------------------------------------------
[单片机]
<font color='red'>51单片机</font>pwm调制 产生多路分频信号 倍频
51单片机之IIC&EEPROM的驱动程序
#include #include ./delay/delay.h sbit SCL = P2^0; sbit SDA = P2^1; bit ack = 0; unsigned char flag = 1; #define LCDPORT P0 #define LCD_WRITE_DATA 1 #define LCD_WRITE_COM 0 sbit RS = P2^4; sbit RW = P2^5; sbit E = P2^6; #define SUCC 0 #define ERR 1 void iic_start() { SDA = 1; //先操作SDA,在操作SCL SCL = 1; dela
[单片机]
51汇编学习-51单片机汇编写40%占空比pwm
LJMP MAIN; ORG 000BH; LJMP ITP0; ORG 0100H; MAIN: ACALL PT0M0; MOV A,#00; MOV 30H,#4; PT0M0: MOV TMOD,#02H;Initialize FANGSHI ER mode MOV TL0,#0CEH;Timing 50Us MOV TH0,#0CEH; SETB ET0; SETB EA; SETB TR0; RET ITP0: PUSH PSW; INC A; CJNE A ,30H,AAA; MOV A,#0; MOV
[单片机]
51汇编学习-<font color='red'>51单片机</font>汇编写40%占空比pwm
MAX517与51单片机的I2C总线数据通信
1 I2C总线的特点及基本通信协议 I2C总线是Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线?串行数据线和串行时钟线?即可使连接于总线上的器件之间实现信息传送,同时可通过对器件进行软件寻址,而不是对硬件进行片选寻址的方式来节约通信线数目,从而减少了硬件所占空间。因为总线已集成在片内,所以大大缩短了设计时间,此外,在从系统中移去或增加集成电路芯片时,对总线上的其它集成芯片没有影响。 1.1 I2C总线的主要特点 I2C总线通常由两根线构成:串行数据线(SDA)和串行时钟线(SCL);总线上所有的器件都可以通过软件寻址,并保持简单的主从关系,其中主器件既可以作为发送器,又可以作为接收器;
[单片机]
MAX517与<font color='red'>51单片机</font>的I2C总线数据通信
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved