本文介绍的单片机控制数字钟硬件结构简单,所需元器件少,价格低廉,制作容易,适合初学者习作。单片机选用带flashROM的51系列,具体型号AT89C51或AT89S52等。PO口、Pl口、P2口、P3口各接一共阳数码管,直接驱动。PO和P1所接的数码管分别显示分、十分。P2口所接的数码管显示小时,为了和分钟数字区别开,该数码管的小数点常亮。P3口的P3.O和P3,1分别接第四个数码管的b、c段显示1,即十小时。如果不到十小时,则不显示。

小时为12进制,分为60进制。时钟为12MHz。两按钮分别校时和校分。复位按钮清零。总体框图如上图。

一、硬件电路(参见原理图下图)

1、电源:51系列单片机需要5V直流稳压电源。将220V交流电降压,变压器选择5W,次级电压为10V。桥式整流,二极管选择1N4002。选三端稳压器7805。2个100UF25V电容在输入和输出滤波。在5V输出端再加一个0.01uF瓷片电容进行高频滤波。

2、复位电路:复位电路采用上电复位和按钮复位。由一个10UF的电容和一个按钮以及51kQ、2.2kQ电阻各一个构成。

3、外部晶振电路:外部晶振电路由2个30pF的电容和一个12MHz的晶体振荡器构成。

4、校时和校分电路:由P3.3外接一个按钮开关到地作为校时键。由P3.2外接一按钮到地作为校分键。

5、显示电路:因为P口的灌电流在15mA左右,可直接驱动数码管。由PO口和P1口各外接一个共阳极数码管,直接驱动,PO所接数码管显示分,P1所接数码管显示十分,小数点不点亮。P2口外接一个数码管显示小时,但小数点要点亮,用以分隔时分。P3口的P3.1和P3.0分别外接到一数码管的b段和c段,显示十小时,如果不到十小时,该两段灭。小时的显示为12进制。

二、软件系统

软件系统分四个部分:主程序部分,计时显示中断子程序部分,校时中断子程序部分,校分中断子程序部分,分别介绍如下:

1、主程序部分

主程序流程如右图.主要有设置堆栈,清R2(为50ms计数器)、R3(分计数器)、R4(十分计数器)、R5(小时计数器)、R6(十小时计数器);设置定时器,设置中断等,汇编语言源程序如下:

三、电路安装和调试

电路安装参考图(万能板焊接面)如下图。为了安装方便,其中各数码管管脚和单片机P口各驱动电阻端直接用细软导线相连,下图中未画出。只要安装无误,硬件方面不需调试。如时间误差过大(每天误差大于10秒),在软件方面,可修改计时显示中断子程序中装入TLO中的初值BOH,加大或减小即可。

四、元器件明细表

单片机简易数字钟c语言程序,用AT89C51/AT89S52单片机制作的简易数字钟相关推荐

  1. 51单片机控制步进电机的c语言程序,用AT89C51单片机控制步进电机的汇编源程序...

    描述 下面程序完成的主要功能:实现步进电机的正反转,加速.减速:显示电机转速(转速级别)和工作状态(正转.反转.不转). 源程序 SPEED EQU 10H ;SPEED为转速等级标志,共7级,即1~ ...

  2. 洗衣机洗涤部分c语言程序,51单片机洗衣机控制板及C语言程序

    51单片机洗衣机控制板及C语言程序,该控制板单片机采用AT89C51单片机,所设计全自动洗衣机功能有:标准洗衣.经济洗衣.单独洗衣以及排水四种洗衣等四种方式,有强洗.弱洗及运行/暂停.显示及报警功能, ...

  3. 液晶显示屏的C语言编码,单片机液晶汉字显示c语言程序

    单片机液晶汉字显示c语言程序 单片机液晶汉字显示c语言程序 /*液晶屏分为4行*12列汉字,全部使用模拟接口方式. /* TGLCMLIMIT64A接口程序(模拟方式) ;************** ...

  4. 超声波c语言程序,51单片机超声波模块的C语言程序.doc

    51单片机超声波模块的C语言程序.doc 超声波模块程序 超声波模块程序 Trig P20 Echo P32 include define uchar unsigned char define uin ...

  5. c语言打铃器单片机程序,51单片机自动打铃C语言程序

    51单片机自动打铃C语言程序: #include "reg51.h" #include "intrins.h" #define uchar unsigned c ...

  6. 数字时钟单片机程序c语言,单片机数字时钟C语言程序

    单片机程序 /********************************************************/ #include // 包含51单片机寄存器定义的头文件 unsign ...

  7. 单片机六位抢答器c语言程序,八路电子抢答器(基于51单片机的8路抢答器设计C语言程序)...

    哥,你还有AT89C51单片机8路抢答器的资料吗 哥,你还有AT89C51单片机8路抢答器的资料吗 AT89C51单片机8路抢答器的资料 源程序如下 #include #define uchar un ...

  8. adc0809 c语言程序,ADC0809 模数转换 89C52单片机C语言程序(电压表)

    很不错的程序哦! ADC0809 模数转换 89C52单片机C语言程序 阅读108 评论0 字号:大中小 /**********[数字电压温度表]***********/ #include #defi ...

  9. 智能循迹避障小车C语言程序编写思路,基于单片机的智能小车红外避障循迹系统设计与制作...

    余秀玲 余秀娟 摘 要:随着科技的高速发展,人们对生活质量的要求越来越高,无人驾驶汽车已经被广为研发和试用,由此智能小车的快速发展也是在情理之中.通过对基于单片机的智能小车的硬件及软件设计分析,实现红 ...

  10. 51单片机c语言程序执行顺序,51单片机程序执行流程详细分析

    这里是一个循环,根据DJNZ指令的功能:每执行一次DJNZ RO, IDATALOOP就将R0的值减1,若R0的值不为0则就跳到IDATALOOP地址去.很显然这是一个循环,那么RO的值是多少呢,在以 ...

最新文章

  1. boost::dynamic_bitset模块boost::hash的测试程序
  2. 2021年2月Harmonyos时候上线,华为HarmonyOS系统将于4月上线 MateX2首批升级
  3. 持续集成部署Jenkins工作笔记0017---17.整合GitHub的持续集成环境要点说明
  4. [摘文]BizTalk概述
  5. 关闭迅雷首页播放视频的方法
  6. ##智能优化算法复习--免疫算法IA
  7. 一梦江湖获取服务器信息卡住,一梦江湖手游2021年8月6日更新公告
  8. 解决outlook2016 中邮件中,点击链接提示(您的组织策略阻止我们为您完成此操作)解决方案
  9. 修改网站背景图html代码,网站首页顶部添加背景图片的修改代码
  10. [敏捷开发实践] 用Sonarqube评估系统中的 Technical Debt (技术债)
  11. Oracle官网用户名密码
  12. C++ API 设计 10 第五章 设计风格
  13. 2018年以后正确的网站外链建设方法
  14. 精选100个Python实战项目案例,送给缺乏实战经验的你
  15. 补齐 windows 运行库和运行环境(VC++、DirectX、.Net)
  16. 计算机软考职称年限,计算机软考证书是职称吗
  17. python-pip加速
  18. 层次聚类算法的原理及实现Hierarchical Clustering
  19. python神经网络编程 豆瓣,小波神经网络预测python
  20. RMAN冗余备份概念与方法

热门文章

  1. SDCC讲师专访:创新工场蔡学镛为何看好Dart
  2. 拉格朗日乘子法、惩罚函数法
  3. android微信网页视频播放器,关于微信使用内置播放器播放视频的办法
  4. 自定义更改虚拟机中Ubuntu的ip地址
  5. 机器学习识别图片的基本原理
  6. 核方法以及核函数讲解
  7. coco2017数据集百度网盘链接
  8. mysql调查问卷数据库设计_客服-问卷调查-问题答案表 - 数据库设计 - 数据库表结构 - 果创云...
  9. 提升手机麦克风音量_安卓手机音量调整办法(听筒、话筒、扬声器)
  10. 美国计算机专业nlp大学排名,美国人工智能专业排名前7的一流学府 看看哪所院校最令你心动吧!...