加入收藏

全球热讯:单片机入门之数码管时钟

2023-06-28 08:47:02 来源:爱瑞单片机

在之前的文章中我们学习了多位数码管的倒计时,下面我们将对多位数码管对实际生活中的时间来进行显示,该功能的实现也并不复杂,将数码管知识相结合并运用起来,就可以完成一个属于自己的时钟了。


(相关资料图)

一、功能概述

实现对时间的计数我们需要用到单片机中的定时器模块,定时器的本质上就是每经过一个单片机自己机械周期就会加一的寄存器。定时器也可以是一个中断,当到达了给定时时间后就会执行相对应的程序。

了解了定时器的原理和使用方法,我们就可以选择我们需要的多位数码管来进行电路的设计了。

二、显示原理

既然我们需要现实的是时分秒的时间,那么我们可以选用六位的数码管,每两个数码管分别显示时、分、秒。而控制每一个数码管都需要段码线和选位线来控制,这样也节省了我们所需要使用的单片机IO口。

三、电路连接

使用Proteus进行电路图仿真

四 、程序设计

程序代码

#include< reg51.h >typedef unsigned char uchar;typedef unsigned int uint;uchar code num[10]={0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90};  // 0~9字码uchar miao=0, fen=0, shi=0;  //进位标志位uint i=0;  //计时uchar miao_L, miao_H, fen_L, fen_H, shi_L, shi_H;  //时、分、秒的个位(xxx_L)和十位(xxx_H)  void delay(uint x){  //延时函数 while(x--);}void T0_init(){                     //定时器 0 初始化 TMOD = 0x01; //工作方式 1TH0 = 0x3c;  //高八位赋初值    65536-50000=15536 = 3cb0HTL0 = 0xb0;  //底八位赋初值EA = 1;      //开总中断ET0 = 1;     //开 T0 中断TR0 = 1;     //启动 T0}void display(){  //显示P2 = 0x20;  //秒与分间隔线P0 = 0xbf;delay(500);P2 = 0x04;  //分与时间隔线P0 = 0xbf;delay(500);P2 = 0x80;  //数码管位选 1000 0000P0 = num[miao_L];  //秒个位delay(500);P2 = 0x40; //数码管位选 0100 0000P0 = num[miao_H];  //秒十位delay(500);P2 = 0x10; //数码管位选 0001 0000P0 = num[fen_L];  //分个位delay(500);P2 = 0x08; //数码管位选 0000 1000P0 = num[fen_H];  //分十位delay(500);P2 = 0x02; //数码管位选 0000 0010P0 = num[shi_L];  //分个位delay(500);P2 = 0x01; //数码管位选 0000 0001P0 = num[shi_H];  //分十位delay(500);}void main(){T0_init();  //定时器初始化while(1){display();  //显示     }}void timer0_int() interrupt 1{  //中断服务函数   i++; if(i == 20){  i = 0;  //满一秒清零 miao++; //i = 100 为一,秒标志位加 1if(miao == 60){miao = 0;  //满一分清零fen++;if(fen == 60){fen = 0;  //满一时清零shi++;if(shi == 24){shi = 0;  //24小时制fen = 0;miao = 0;}}}miao_L = miao%10;  //秒个位miao_H = miao/10;  //秒十位fen_L = fen%10;  //分个位fen_H = fen/10;  //分十位shi_L = shi%10;  //时个位shi_H = shi/10;  //时十位 } }

五、总结

本章对多位数码管的使用进行了更深一步的研究,更加贴近我们的生活。一个复杂的程序都是由简单的程序慢慢延伸下去的,都不是一蹴而就的,其实在我们一步一步的学习中,我们已经能对生活中的电子产品进行自己的修改了,下一章我们将学习如何更为合理的使用定时器来对数码管的显示进行控制

关键词:

相关新闻

资讯

基督教起源时期 基督教的起源时间
基督教起源时期 基督教的起源时间

1、公元1世纪,基督教起源于巴勒斯坦,相传为犹太的拿撒......更多>

天天热议:毕福剑罕现身_毕福剑昔日全家福曝光
天天热议:毕福剑罕现身_毕福剑昔日全家福曝光

1、2015央视春晚主持人名单:朱军、董卿、康辉、撒贝......更多>

snkrs切换不回中国了怎么办snkrs切换不回中国解决办法
snkrs切换不回中国了怎么办snkrs切换不回中国解决办法

我们在使用snkrs软件时候,有点玩家们可能就会遇到在......更多>

财产安全防范知识_安全防范知识 速看料
财产安全防范知识_安全防范知识 速看料

1、一、飞车抢夺防范方法:是在公共场合不要 "露财 "......更多>

山东慈善奖!临沂市公示28名拟推荐对象 世界百事通
山东慈善奖!临沂市公示28名拟推荐对象 世界百事通

近日,临沂市民政局发布关于第八届“山东慈善奖”临沂......更多>

今年全国快递业务量已达600亿件 微头条
今年全国快递业务量已达600亿件 微头条

原标题:今年全国快递业务量已达600亿件中工网北京6月......更多>

焦点关注:农发行常州市分行“量、质、效”并举 全力支持乡村振兴
焦点关注:农发行常州市分行“量、质、效”并举 全力支持乡村振兴

今年以来,农发行江苏省常州市分行坚守职能定位,创优......更多>

环球速递!美元VC喊话高考生:“家里没钱别学金融,别做投资”
环球速递!美元VC喊话高考生:“家里没钱别学金融,别做投资”

现在,吃饭费用今年一季度末的时候取消了,打车也只......更多>

2023好网民·在山东|张立敏:讲好医患暖心故事 全球热资讯
2023好网民·在山东|张立敏:讲好医患暖心故事 全球热资讯

“我们干宣传工作就是要用自身的责任和情怀,将正能量......更多>

滚动:1-5月我国造船业三大指标全面增长 国际市场份额保持领先
滚动:1-5月我国造船业三大指标全面增长 国际市场份额保持领先

人民网北京6月26日电(黄盛)据中国船舶工业行业协会......更多>

关注

【全球聚看点】世界互联网大会数字文明尼山对话在山东举行
【全球聚看点】世界互联网大会数字文明尼山对话在山东举行
消息(新闻联播):今天(6月26日),世界互联网大会... 更多>
【全球聚看点】世界互联网大会数字文明尼山对话在山东举行
消息(新闻联播):今天(6月26日),世界互联网大会... 更多>
瞄准前沿技术 促进降本增效(经济聚焦)_天天即时
核心阅读从上游硅料技术研发、中游组件生产制造,到下... 更多>
朱啸虎、傅盛激辨GPT背后,AI 大模型“泡沫”要破了?
ChatGPT热潮下,基于大模型的创业是否有价值,猎豹移... 更多>
英国连锁超市Sainsbury进一步降价 表明通胀有所缓解
【英国连锁超市Sainsbury进一步降价表明通胀有所缓解... 更多>
焦点日报:《合金装备4》曾计划登陆Xbox 360 主机遭取消
《合金装备4》曾考虑登录Xbox360主机,但由于需要多张... 更多>
端午节假期国内出游人次破亿
端午节假期,旅游市场表现亮眼。文旅部6月24日晚披露... 更多>
全球头条:南华西社区红歌会奏响,居民欢聚享音乐盛宴
为传承红色基因,厚植爱国主义情怀,赓续红色血脉,6... 更多>
当前消息!@找工作的你 快看!华南理工大学附属实验学校招聘教师4名
五山君了解到,因教学工作需要华南理工大学附属实验学... 更多>
2023上半年中国房地产总结与展望(产品篇)-当前关注
2023上半年中国房地产总结与展望(产品篇),四房,小户... 更多>
“彩云之约”海外台胞云南行正式启动|当前焦点
6月27日,以“同心圆梦融合发展”为主题的“彩云之约... 更多>
让群众成为竞演的主角 让竞演成为群众的节日丨聚焦“乡当潮”竞演大赛 资讯推荐
6月以来,四川省第三届乡村文化振兴魅力竞演大赛在我... 更多>
2023江苏航空职业技术学院招生计划-各专业招生人数是多少
高考填报志愿时,江苏航空职业技术学院招生计划是广大... 更多>