手动制作电子时钟,手把手教你制作无电源仍可走的时钟
关于【手动制作电子时钟】,今天乾乾小编给您分享一下,如果对您有所帮助别忘了关注本站哦。
1、手动制作电子时钟:手把手教你制作无电源仍可走的时钟
芯片简介
乍一看题目读者可能会纳闷,这是什么奇怪的东西,不用电源还可以工作?其实笔者只是在这里卖了个关子,说的是不用外加电源也可以正常走时,并不是说整个电路工作时不需要供电。也就是说不使用时这个时钟不需要供电,在你加上电源之后就可以显示时间,并且仍然是正确的。就好像有些手机关闭之后又取下电板,等你下次开机的时候它又能显示正确的时间。其实这些手机里面都是有后备电池的,就是做时钟那一小块电路有后备电池供着电的。要是后备电池没有了电,取下电板后问题就来了,这也是为什么有些用久了的手机取下电板再装上,时间就不对了的缘故。但是本文说的这个时钟不需要外加后备电池,那它是怎么做到这一点的呢?请听我慢慢道来。
图5.1 实物图
图5.2 DS12887引脚
先了解一下“主角”的基本特性吧,DS12887是Dallas半导体公司推出的实时时钟芯片,在芯片内部集成了石英晶体、锂电池和其他支持电路,在没有外部供电的情况下,可以正确走时10年;可以计数时、分、秒、年、月、日和星期等信息,而且闰年补偿到2100年有效;内部的闹钟寄存器用来保存闹钟时间,当实时时间等于闹钟时间时,在DS12887的IRQ引脚输出低电平,微控制器可以利用此信号作为闹钟信号来处理。笔者用万用板焊接了电路,实物图见图5.1。下面将介绍如何使用DS12887制作这个时钟。
芯片引脚
了解了“主角”的基本特性,再来看看它的引脚。一个芯片的引脚可以看作是跟外界“交流”的通道,了解了引脚的用法就可以知道如何跟单片机相连。芯片引脚如图5.2所示,其中部分引脚命名与官方的数据手册有所不同,原数据手册上使用的是Motorala总线时序的命名方式,这里为了方便理解,采用Intel总线时序的命名方式,因为文章所使用的51单片机即为Intel时序。这两种总线时序最初分别是用在Motorala和Intel两家公司生产的芯片中,有兴趣的朋友可以在DS12887的数据手册上找到更详细的信息。
引脚MOT为总线方式选择,DS12887可以有两种时序:当MOT接VCC时选择Motorala总线时序;当MOT接地或悬空时选择Intel总线时序。本文用AT89S52作为控制器,AT89S52作为一种典型的51单片机,理所当然使用的是Intel总线时序。
AD0~AD7是地址、数据复用线,跟标准的51单片机的P0口类似,在一个读写周期里的前后两个时间段分别是作为地址线或数据线。它可以直接连接到AT89S52的P0口。
ALE为地址锁存信号,因为DS12887数据地址线采用分时复用的形式,所以需要ALE作地址锁存信号。在一个读写周期里AD0~AD7引脚上首先出现的信号表示地址,通过ALE的下降沿将该信号锁存到DS12887的地址寄存器,稍后AD0~AD7引脚上出现的信号则表示写入或读出DS12887的数据。ALE可以直接连接至AT89S52的ALE引脚。
RD、WR是读写控制信号引脚,分别连接AT89S52的RD(P3.7)、WR(P3.6)引脚。
CS为片选信号,为低电平时选中芯片,可以跟AT89S52的P2.7脚相连,这样就可以形成DS12887的读写基地址:0x0000。
IRQ引脚为中断输出信号,当DS12887产生中断时,在IRQ引脚输出有效低电平,该引脚为漏极开路输出,在外部需要加上拉电阻。
复位功能在本设计中不使用,RST可以直接接高电平。
片内资源
看完了外面,进到里面看看。DS12887内部有10字节的时钟(时、分、秒)、闹钟(时、分、秒)和日历(年、月、日、星期)寄存器和4个控制寄存器以及114字节的通用RAM。地址分配如附表所示。
在本文的设计中只使用了前面14字节的时钟、闹钟、日历和控制寄存器,其余的114字节的RAM并未使用。采用了如图5.3所示的电路图后,片内的14字节的地址分配就是从0x0000~0x000D,在程序中可以像访问外部RAM一样方便地读取和写入数据至这些地址。
0x0000~0x0009是时钟、闹钟和日历寄存器,保留了时间信息等相关内容,单片机可以通过读取这些内容将时间信息显示出来。
寄存器A的BIT6~BIT5控制DS12887内部晶体振荡器的关断。
寄存器B控制各种中断的使能,在本文中需要将闹钟使能位(BIT5)打开,BIT2决定输出的时钟数据是十六进制或是BCD码,BIT1决定时间采用的格式:24小时或12小时制。
寄存器C保存了中断标志位,若在使用多种中断的情况下,微控制器可以通过读取该寄存器辨别产生了何种中断,从而进入相应的处理程序。而在本设计中,只使用了闹钟中断,当在/IRQ引脚输出低电平时,就可以判断产生了闹钟时间到的中断。但是仍需要通过读取该寄存器以清楚中断标志,以免程序重复处理。
寄存器D是与器件是否有效相关的寄存器,本电路无需处理该寄存器。
附表 片内地址分配
硬件电路
电路使用4位一体共阴极数码管显示时钟、闹钟和日历信息,数码管采用CD4511作硬件译码,74LS06作动态选择和驱动电路。电路图如图5.3所示。
CD4511是一种用于数码管显示的译码芯片,在芯片输入引脚(D~A)输入4位二进制数值,在输出端(a~g)则译码输出共阴极数码管所需要显示的数值,例如,在CD4511的D~A这4个引脚输入“0101”(十进制的“5”,D为最高有效位数据),则在输出端的a~g输出“1011011”。而且CD4511有个很有用的“消隐”功能,即当输入端D~A的值大于9时,输出端a~g呈现高阻态,从而数码管表现为7段灯都会灭掉。
74LS06包含6个非门电路,本文只需要其中4路即可。在输入端置“1”,对应的输出端则为“0”,选中其中一个数码管。比如在AT89S52的P1.4输入“1”,则74LS06的4A引脚为“1”,在其对应的输出脚4Y输出就为“0”,从而选中与s1相连的DS1数码管。在焊接电路板时,可以将CD4511和74LS06这两个芯片放在数码管下方,这样整个电路板就会小巧一些。
图5.3 电路图
因为数码管只有4位,而且必须用其中的两位显示一项时间信息,所以每次只可以显示两项时间信息,例如,DS1、DS2分别显示月份的十位、个位,DS3、DS4分别显示日期的十位、个位。但要显示的时间信息要多得多,所以采用“分时复用”的方法轮流显示时和分、月和日、年和星期,在时间分配上笔者使用了下述方案:在每一分钟中,0~9s、20~39s、50~59s的时间里显示时钟的时和分,在10~19s内显示月和日,在40~49s内显示年和星期,而时钟的秒数则不作显示处理。因为星期的最大数值为7(表示星期天),可以只在个位显示,星期分配的十位可以作“消隐”处理。设定的闹钟信息不是需要经常查看的,所以不做上述的分时显示,而是通过按下KEY4键查看。
图5.4 主函数程序流程图
电路图中的4个按键功能分配如下,KEY1:数值加1键;KEY2:数值减1键;KEY3:调节项目选择,当该键按下可以选择不同的调节项目,依次为时钟的时、时钟的分、月份、日期、年、星期、闹钟的时和闹钟的分。KEY4:选择显示时间(包括时、分、月、日、年和星期)或闹钟。
红色的LED闪亮表示数码管当前显示的是闹钟的时和分,绿色的LED闪亮表示当前显示的是时钟的时和分;而红色的LED闪亮和蜂鸣器发出声音,则表示闹钟所定格的时间到来,发出警报提醒;当两个LED都不闪亮时表示显示的为日历信息,即月、日、年和星期,可以通过DS3是否显示数据区分出显示的是月、日还是年、星期。
软件设计
笔者使用的编译环境为Keil编译软件,采用C51编程语言。
2、手动制作电子时钟,DIY一款时尚好玩的电子码数时钟
自从上次发布了一篇关于DIY47耳放的文章后,具体可见《逆天了,这个人自己焊了一台47耳放》。
大家对于文章是有赞有弹,当然,我知道这些东西对于一些专业的人员来说不值一提,因为确实是没什么技术含量,充其量也只是将别人准备好的散件组装一下而已,仅仅算一份手工而已。
我并不是专业的人员,只是作为一个普通玩家与大家分享自己的一些玩法而已,玩的东西不一定是技术含量很高的东西,重要的是享受玩的过程,如果你的技术了得,欢迎来也来跟大家分享一下你玩的过程,如果不喜欢,那么请你直接关闭掉即可,没必要继续往下看影响你的心情。
今天继续为大家DIY一个时常好玩的电子数码时钟。
本来只是想做一个最简单的电子数码时钟的,电子数码时钟其实是一个单片机实现的功能,电子技术论坛上都能搜索到相应的电路图及配件清单,我们只需要按图索骥即可制作。
(以上图片来源网络)
利用万能洞洞板制作出来的成品没有经过专业的布线,仅仅是实现功能,没有考虑外壳或外观等情况,存在外观上不好看、板子空间利用不好、块头大不方便存放等问题,比较适合想学习单片机的人使用。但我已离开校园,不需要这些实验的产品,需要的是实用性强的东西,如果能找到一个经过专业布线和包含外壳的电子种散件是最好的,经过搜索,万能的某宝还真可以帮助我们实现。
这个来自某宝的电子数码时钟的套件包含了外壳、电子时钟的元件、数码管的滤光胶纸(可以让数码管的数字看起来更自然),贴心的玩家已经为我们准备得很充分了,小小的PCB板子上每一个元件的位置印刷标记已经非常清楚,且厂家已经在原有的电子数码时钟的基本上上增加了闹钟、整点响铃、日期、星期、温度、光控调整亮度等的功能(单片机程序厂家已经做好并写入),还增加了断电记忆功能,不用每次断电或移动后再重新调整。这些都是我意料之外的——我的初衷仅仅需要一个能显示时间的电子数码时钟。如果我们有编程的基础以及单片机的写入的设备,还能对单片机进行编程和升级,增强可玩性。
既然是手工设备,电铬铁、锡线这些工具是必不可少的。
线路图是可有可无的,因为PCB板上已经清晰的印刷和标记好每一个电子元件的位置。
安装前,先了解一下各种的电子元件。
STC15F204EA,也就是我们说的单片机,在计算机上编写好程序后通过写入工具把程序写入,在电路中执行相应的指令,在这个电子数码时钟里主要是对数码管、时间切换、闹钟、报时等功能进行控制。
晶振和DS1302是时钟芯片这个时钟功能元件,时钟的计时周期就是靠这两个主要部件实现。
三极管、电阻、电容,没什么特别的,常用的电子元件,对输入的电源进行整流。
热敏电阻,可以监测温度的变化,在这个时钟里是实现温度监测的功能。
光敏电阻,感应周围光线的强度,在这个电子数码时钟里实现根据光线强弱监控来调整数码管的亮度。
PCB是双面安装的,先把PCB背面板上的电子元件按照从底到高顺序依次插入元件,将电子元件的脚上锡固定好,个人建议的上件顺序为电阻、 三极管、电容、晶振、按键、IC插座、蜂鸣器、钮扣电池插座、外接电源插头。热敏电阻和光敏电阻是露在外面的,所以最后要结合外壳安装再进行上件。
上件过程中需要注意的是,电阻的安装要注意电阻值的不同以免插错位置,三极管和蜂鸣器有是极性的,需要在安装中加以注意。
背面的元件上完后,用水口钳将元件的长脚剪掉,方面上下面的元件,也就是数码管了。
LED数码管各种数字的演示效果
从上图码管的拆解和演示可以看出,一个数码管数字“日”其实是分成五个小部分,背后是五个贴片LED灯,数字是通过单片机来控制7个贴片LED灯的电路通断,从而控制组合LED灯亮与不亮来完成一个数字的显示,大家别想得太复杂。如想显示显示数字“1”,单片机的程序只需要控制最右边的两个LED灯亮即可达到效果。数码管上还有另外一个小数点在右下角的位置,也是一个LED灯,也是通过单片机程序来控制的。
数码管安装的第三个数字要注意是反向装的,PCB板也有相应安装标识的,要注意看。安装完数码管后,将两个单片机插入IC插座,这时可以先通电试一下时间显示是否正常,如果正常,就再将光敏电阻和热敏电阻对比下亚克力外壳的顶部出孔的位置,将电阻的脚对应剪短上板即可。如果显示不正常,需要重新查找焊接的地方是否有虚焊,新手有时会有虚焊的情况会导致显示有问题的,仔细查找到虚焊的地方重新上焊一般能解决问题。
将配套的滤光胶纸贴在数码管上,然后将数码管以外的多余位置用小剪刀剪掉,数码管上贴上滤光胶纸后,显示的效果会好很多,如果不贴上滤光胶纸,数码显示的数字就很难看得清楚,如上图。
测试好电子数码时钟正常后,将纽扣电池装入电池座中,再继续安装亚克力外壳。安装亚克力面板要注意好各个面板的位置,先在位置孔上好配套的镙丝套上镙帽,再将镙帽套入到相应的镙帽孔位再用镙丝刀拧紧即可。根据个人经验,按前、上、右、后、下、左这样的顺序安装比较容易,不注意顺序的话可以可能会弄很久,甚至会让心急的你弄坏亚克力面板。
电子数码时钟制作完成,用配套的电源线接上移动电源或手机充电头就能使用,时尚,好玩有木有,虽然技术含量不高,但我们享受安装的过程。
数码管有不同的颜色,大家可以在先散件的时候选择不同颜色的数码管的。
时钟会按时钟时间、温度、日期、星期的顺序轮流显示,显示的时间分别为45秒、5秒、5秒、5秒。
时钟有光敏电阻,能根据光线的强弱来调节亮度,方便人们在卧室等地方使用,夜晚不用那么刺眼。
至此,一个完整的单片机电子数码时钟制作实例完成,不涉及技术部分,仅是手工组装。主要的技术涉及单片机的程序控制和写入,但生产的商家已经帮我们实现好,这种已经做好技术的散件,成本低、成功率高、制作时间周期短,制作的成品小巧精致、美观耐看,值得我们尝试一试。
本文关键词:怎么制作电子时钟,简易电子时钟,电子时钟diy套件操作说明,手动制作电子时钟怎么做,手动制作电子时钟教程。这就是关于《手动制作电子时钟,手把手教你制作无电源仍可走的时钟》的所有内容,希望对您能有所帮助!更多的知识请继续关注《犇涌向乾》百科知识网站:http://www.029ztxx.com!
版权声明: 本站仅提供信息存储空间服务,旨在传递更多信息,不拥有所有权,不承担相关法律责任,不代表本网赞同其观点和对其真实性负责。如因作品内容、版权和其它问题需要同本网联系的,请发送邮件至 举报,一经查实,本站将立刻删除。