单片机简易数字钟c语言程序,用AT89C51/AT89S52单片机制作的简易数字钟
本文介绍的单片机控制数字钟硬件结构简单,所需元器件少,价格低廉,制作容易,适合初学者习作。单片机选用带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单片机制作的简易数字钟相关推荐
- 51单片机控制步进电机的c语言程序,用AT89C51单片机控制步进电机的汇编源程序...
描述 下面程序完成的主要功能:实现步进电机的正反转,加速.减速:显示电机转速(转速级别)和工作状态(正转.反转.不转). 源程序 SPEED EQU 10H ;SPEED为转速等级标志,共7级,即1~ ...
- 洗衣机洗涤部分c语言程序,51单片机洗衣机控制板及C语言程序
51单片机洗衣机控制板及C语言程序,该控制板单片机采用AT89C51单片机,所设计全自动洗衣机功能有:标准洗衣.经济洗衣.单独洗衣以及排水四种洗衣等四种方式,有强洗.弱洗及运行/暂停.显示及报警功能, ...
- 液晶显示屏的C语言编码,单片机液晶汉字显示c语言程序
单片机液晶汉字显示c语言程序 单片机液晶汉字显示c语言程序 /*液晶屏分为4行*12列汉字,全部使用模拟接口方式. /* TGLCMLIMIT64A接口程序(模拟方式) ;************** ...
- 超声波c语言程序,51单片机超声波模块的C语言程序.doc
51单片机超声波模块的C语言程序.doc 超声波模块程序 超声波模块程序 Trig P20 Echo P32 include define uchar unsigned char define uin ...
- c语言打铃器单片机程序,51单片机自动打铃C语言程序
51单片机自动打铃C语言程序: #include "reg51.h" #include "intrins.h" #define uchar unsigned c ...
- 数字时钟单片机程序c语言,单片机数字时钟C语言程序
单片机程序 /********************************************************/ #include // 包含51单片机寄存器定义的头文件 unsign ...
- 单片机六位抢答器c语言程序,八路电子抢答器(基于51单片机的8路抢答器设计C语言程序)...
哥,你还有AT89C51单片机8路抢答器的资料吗 哥,你还有AT89C51单片机8路抢答器的资料吗 AT89C51单片机8路抢答器的资料 源程序如下 #include #define uchar un ...
- adc0809 c语言程序,ADC0809 模数转换 89C52单片机C语言程序(电压表)
很不错的程序哦! ADC0809 模数转换 89C52单片机C语言程序 阅读108 评论0 字号:大中小 /**********[数字电压温度表]***********/ #include #defi ...
- 智能循迹避障小车C语言程序编写思路,基于单片机的智能小车红外避障循迹系统设计与制作...
余秀玲 余秀娟 摘 要:随着科技的高速发展,人们对生活质量的要求越来越高,无人驾驶汽车已经被广为研发和试用,由此智能小车的快速发展也是在情理之中.通过对基于单片机的智能小车的硬件及软件设计分析,实现红 ...
- 51单片机c语言程序执行顺序,51单片机程序执行流程详细分析
这里是一个循环,根据DJNZ指令的功能:每执行一次DJNZ RO, IDATALOOP就将R0的值减1,若R0的值不为0则就跳到IDATALOOP地址去.很显然这是一个循环,那么RO的值是多少呢,在以 ...
最新文章
- boost::dynamic_bitset模块boost::hash的测试程序
- 2021年2月Harmonyos时候上线,华为HarmonyOS系统将于4月上线 MateX2首批升级
- 持续集成部署Jenkins工作笔记0017---17.整合GitHub的持续集成环境要点说明
- [摘文]BizTalk概述
- 关闭迅雷首页播放视频的方法
- ##智能优化算法复习--免疫算法IA
- 一梦江湖获取服务器信息卡住,一梦江湖手游2021年8月6日更新公告
- 解决outlook2016 中邮件中,点击链接提示(您的组织策略阻止我们为您完成此操作)解决方案
- 修改网站背景图html代码,网站首页顶部添加背景图片的修改代码
- [敏捷开发实践] 用Sonarqube评估系统中的 Technical Debt (技术债)
- Oracle官网用户名密码
- C++ API 设计 10 第五章 设计风格
- 2018年以后正确的网站外链建设方法
- 精选100个Python实战项目案例,送给缺乏实战经验的你
- 补齐 windows 运行库和运行环境(VC++、DirectX、.Net)
- 计算机软考职称年限,计算机软考证书是职称吗
- python-pip加速
- 层次聚类算法的原理及实现Hierarchical Clustering
- python神经网络编程 豆瓣,小波神经网络预测python
- RMAN冗余备份概念与方法
热门文章
- SDCC讲师专访:创新工场蔡学镛为何看好Dart
- 拉格朗日乘子法、惩罚函数法
- android微信网页视频播放器,关于微信使用内置播放器播放视频的办法
- 自定义更改虚拟机中Ubuntu的ip地址
- 机器学习识别图片的基本原理
- 核方法以及核函数讲解
- coco2017数据集百度网盘链接
- mysql调查问卷数据库设计_客服-问卷调查-问题答案表 - 数据库设计 - 数据库表结构 - 果创云...
- 提升手机麦克风音量_安卓手机音量调整办法(听筒、话筒、扬声器)
- 美国计算机专业nlp大学排名,美国人工智能专业排名前7的一流学府 看看哪所院校最令你心动吧!...