设计与开发

单片机at89c2051 自己做一个AT89C2051数码管18寸电子钟

小编 2024-10-07 设计与开发 23 0

自己做一个AT89C2051数码管18寸电子钟

家里的指针式电子钟坏了,本想上网买一个新的电子钟万年历,可是看了一圈没有一个看中的,因为大多数数码管显示的数字太小,远了看不清楚,想想手里还有一些电子元件,不如做一个电子钟,先看看手里都有什么元件,于是开始就动手做,把原来的指针表改造了一下,改造好感觉的还可以,唯一遗憾的就是没有掉电记忆,要不然还得上网买元件,再说现在也不轻易停电,调一下时间也很简单,不过时间精确度还可以,所以就将就着用吧!

废话不说上图看看

用万能板制作单片机AT89C2051,晶振还没有焊接

万能板背面焊接图

0.9元一个二手双色数码管,以前淘宝网上买的,带驱动,拆掉中间的一个,换上发光二极管

把线路全部焊接好装入电子表外壳中

找2块3合板,固定数码管线路板

猜猜这个是用来干什么的?

没有数码管滤光片,就用一次性塑料袋,用胶带固定粘在上面

改造电子钟面板,用大小合适的一张纸片定位

2017年的新挂历,要搞破坏了

裁剪大小合适的挂历纸做面板

把裁剪好的纸片全部粘贴的玻璃上

组装好的电子钟效果图

电子钟背面,用了三个开关来调整电子钟时间

最终显示的效果,看着还可以。

原理图及附件请点击阅读原文

以上图文内容均是EEWORLD论坛网友:

yjtyjt 原创,在此感谢。

欢迎微博@EEWORLD

如果你也写过此类原创干货请关注微信公众号:EEWORLD(电子工程世界)回复“投稿”, 也可将你的原创发至: bbs_service@eeworld.com.cn,一经入选,我们将帮你登上头条!

与更多行业内网友进行交流请登陆EEWORLD论坛。

用单片机制作的自行车里程速度表

现在,很多人都把骑自行车作为一项锻炼身体的运动项目,如果在自行车上加装一个里程速度表,就可以知道自己骑车的速度和行程,从而很好地控制运动量。本文介绍一种用单片机制作的自行车里程速度表。里程和速度显示可进行切换,采用三位数码管显示,最大可显示里程为99.9km。显示最高速度可为99.9km/h。该里程速度表也可以用在电动自行车和速度不超过100km/h的摩托车上。

一、电路原理

电路如图1所示。由检测传感器、单片机电路和数码显示电路等组成。

检测传感器由永久磁铁和开关型霍尔集成电路UGN3020.组成。

UGN3020由霍尔元件、放大器、整形电路及集电极开路输出电路等组成。

其功能是把磁信号转换成电信号。图2a是其内部框图。霍尔元件H为磁敏元件,当垂直于霍尔元件的磁场强度随之变化时,其两端的电压就会发生变化,经放大和整形后,即可在③脚输出脉冲电信号。其工作特性如图2b所示。由于有一定的磁滞效应。可保证开关无抖动。Bop为工作点“开”的磁场强度,Brp为释放点“关”的磁场强度。永久磁铁固定在车轮的辐条上,UGN3020固定在车轮的叉架上。

检测传感器的工作原理如下:车轮每转一周,磁铁经过UGN3020一次,其③脚就输出一个脉冲信号。UGN3020输出的脉冲信号作为单片机AT89C2051的外中断信号。从P3.2口输入。单片机测量脉冲信号的个数和脉冲周期。根据脉冲信号的个数计算出里程,根据脉冲信号的周期计算出速度并送数码管显示。Sl用来进行里程和速度显示的切换,在初始状态下显示的是速度。数码管DS1~DS3、VT1~VT3、R4~R13等组成显示电路。使用共阳数码管。P3.3~P3.5为数码管的动态扫描位驱动。P1.0~P1.6作数码段码输出。

二、程序设计

程序用C语言编写,由主程序、外中断O服务程序、11D中断服务程序、延时子程序等模块组成。主程序主要完成程序初始化和键盘处理。

外部中断0服务程序由测量、计算、读数等部分组成,TO中断服务程序由计时、动态扫描显示、自行车停车判断等部分组成。

从P3.2口输入的脉冲信号作为外中断O的中断请求信号。采用沿触发方式。在测量速度时,由于车轮转动脉冲信号的频率很低,不适宜使用计数的方式进行测量,所以采用测脉冲周期的方法进行测量。用脉冲信号系统来控制计时信号,通过计时数计算出脉冲周期,用车轮的周长除以周期便可得到自行车的行驶速度。在测量里程时,用脉冲信号个数乘以车轮的周长便可获得行驶里程。需要说明的是:脉冲信号周期和个数是同时测量的。要做的只是用按钮开关Sl切换显示。

本文的程序是针对车轮直径为26英寸的自行车编写的。

对于其他规格的自行车。

只要改写程序spm=14904(常量1),n和sPIN=207(常量2)×c即可。为了避免使用浮点数。运算结果长度是以百米为单位的,数据读出时,在第三位数加小数点就换算成千米了。为方便读者制作,现列出各种规格的轮径和轮周长、程序常量的对应值见附表,供参考。

径,英寸1618202224262828.5轮周长/cm128144160176192207223227常量l921610368115201267213824149041605616344常量2128144160176192207223227

定时器TD的中断定时时间为5ms,每中断一次计时变量n加l,因此n的单位为5ms。例如:自行车车轮转一周对应的n值为100。则对应的时间为0.5s。由此可得自行车的速度为14.9km/h。如果n的值达到1000,即5秒钟仍没有发生外部中断,即表示自行车没有前进。n也被清零,速度显示为0。读数采用三位显示,TD中断一次显示一位数。中断3次就可以刷新一次数据。即15ms刷新一次数据。

作者:吴汉清

相关问答

【英语翻译请翻译一下下面的句子:本设计以 AT89C2051单片机 为...

[最佳回答]Thisdesigntakeat89C2051monolithicintegratedcircuitasacore,achievesthecontroldirectcurre...

怎么用编程器读出 AT89C51 单片机 程序-ZOL问答

电子书纽曼纽曼C51讨论回答(2)如果下载程序的时候把保密位也置位了,那编程器读出来的都是FF如果没有置位,则可以用编程器自带的软件,通过编程器读出来。...

AT89c2051单片机 在硬件资源配置和性能上有什么特点?

AT89C2051是一带有2K字节闪速可编程可擦除只读存储器(EEPROM)的低电压,高性能8位CMOS微处理器。它采用ATMEL的高密非易失存储技术制造并和工业标准MCS-51指令...

AT89C2051 89C 51 单片机 的区别?

1.存储空间比89c51少一半,只有2k。2.2051只保留了p1,p3口,并且2051的p3.7在芯片的引脚上没有,只在内部有用,p1.0,p1.1没有内部上拉,要用做输入输出,就需要...

AT89C 51 单片机 主要功能有哪些啊?

AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位...

AT89C2051 P1口的上拉电阻如何计算?】作业帮

[最佳回答]内部是10K的上拉电阻,如果外面再接上拉电阻,结果就是相当于两个电阻的并联连接.

89C2051 怎么编程?

文件名为REG52.H或者REG51.H一般在在电脑的C:\Keil\C51\INC这个路径下功能是定义51系列单片机的寄存器的地址文件名为REG52.H或者REG51.H一般在在电脑的C:\Ke....

AT89c2051单片机 能烧写多大的程序文件?

AT89C2051单片机的程序存储器容量为2KB,可以烧写最大2KB的程序文件。这意味着程序文件的大小不能超过2048字节。因此,程序文件必须在这个限制范围内,以确保能...

单片机 型号那么多,各个 单片机 配一个烧写器吗?-ZOL问答

1、量产时各种封装的IC都有专门的芯片座来进行下载操作,或者直接让供应商给你下载好程序。至于怎么下载,你需要知道所使用的单片机的下载电路,买一个或者自己做...

求推荐一下:阜新标志设计公司,标志设计价格贵吗有经验的来...

[回答]方案的论证与选择1.1方案论证1.1.1采用MCS—51系列单片机和压力传感器来完成压力传感器是鸡蛋闹钟必须用到的传感器,它具有结构简单、体积小、重量...

猜你喜欢