基于AT89C52的自行车速度里程表的设计

2016-11-14 02:28周炳洪家平
电脑知识与技术 2016年24期
关键词:里程单片机速度

周炳 洪家平

摘要:设计并制作了一款以AT89C52为主控制器,使用A44E霍尔传感器进行自行车里程/速度测量的装置。这种装置通过检测A44E霍尔传感器在一定时间内传入单片机系统的脉冲数,再利用软件编程将经过处理的信号转换成自行车行驶的里程和速度,最后用LED显示里程与速度。这种装置里程和速度显示可进行切换,也可以用于摩托车、汽车等其他机动车的仪表上。

关键词:里程/速度;霍尔元件;单片机;LED显示

中图分类号:TP391 文献标识码:A 文章编号:1009-3044(2016)24-0254-02

Abstract:Design and built a with AT89C52 as the main controller, using A44E hall sensor for bicycle mileage/speed measuring device. The device by detecting A44E hall sensor in a certain period of time the number of pulses into single chip microcomputer system, the reuse of software programming will be processed signal into bicycle mileage and speed, the LED display mileage and speed. The unit mileage and speed display can switch, also can be used in motorcycles, cars and other motor vehicles on the instrument.

Key words:mileage/speed;hall sensor;MCU;LED display

随着人们生活水平的不断提高,人们对日常生活用品的要求也越来越高。在满足基本功能的前提下,人们都希望生活用品的功能能够多样化。比如说,自行车在能够骑行的前提下,能够像电动车一样附带测速和测距的功能仪表。自行车速度里程表正是伴随着这个想法应运而生,并且它的发展非常迅速,功能日益多样化,稳定性也越来越好。

我们都知道,要想测量速度,首先要考虑并且解决的是采样问题。这里有一个比较简单的方法,俗称脉冲计数法。就是当转轴每旋转过一周的时候,它会相应地产生出一个或者多个脉冲,我们把这些脉冲传入给单片机,然后单片机经过简单的数学运算,即可算出具体的转速。

常用的传感器有很多种,而最常见的对磁敏感的传感器有霍尔传感器。A44E霍尔传感器是一个3端器件,与三极管非常的相似。它使用起来非常的简便,只要接上电源、地就可以工作,工作电压的界限非常宽。

A44E霍尔传感器的机械结构也非常简单。把霍尔传感器固定在车轮的前叉上,然后把一粒磁钢粘在转轴的轮盘上。只要车轮在转动的时候霍尔传感器靠近过磁钢,立马就会有信号输出。当车轮在不断地旋转时,霍尔传感器就会不断靠近与远离磁钢,因此就会不断地有脉冲信号的产生。如果同时在轮盘上粘上多粒磁钢的话,就可以实现每转一周,获得多个脉冲的输出。这种传感器应用非常的广泛,稳定性好,敏感性强。

1系统硬件电路设计

自行车速度里程表传感器采用霍尔传感器A44E,采用单片机AT89C52为控制器。具体硬件电路原理图如图1所示。

系统中单片机有两种工作状态,端口P1.0显示里程状态,端口P1.1显示速度状态。另外P1.2~P1.3端口和P1.6~ P1.7端口在低电平的时候有效,分别用来设置轮圈的大小。P3.0端口是用来进行速度和里程的切换,当P3.0端口为低电平时显示速度,反之则显示里程。中断服务程序0用来对轮子圈数的计数,轮子每旋转一圈,霍尔传感器A44E便会相应地输出一个低电平脉冲。根据里程寄存器中的数值通过简单的数学公式便可以计算出行驶里程数。中断服务程序1用于控制定时器T1的启动/停止,当输入为1时开启定时器。轮子圈数的计数完成后,经过二分频后形成控制信号。所以,定时器T1的开启/关闭时间恰好为车轮转一圈所花费的时间,通过简单的数学公式便可计算出行驶速度值。

2系统软件设计

系统软件设计包括几个方面,主要为主程序的设计,速度计算子程序的设计,里程计算子程序的设计,显示子程序的设计以及中断服务子程序的设计等。系统的软件总体流程图如图2所示:

各个子程序的功能如下:

⑴ 初始化程序

主要完成以下工作:将部分内存单元清零;设置轮子周长值;开中断及定时器。

⑵ 主程序

根据单片机P3.0的端口状态,主程序来确定LED显示器是用来显示速度还是里程。当单片机端口P3.0端口为低电平时,LED显示速度;当单片机端口P3.0端口为高电平时,LED显示里程。

⑶ 里程计算子程序

单片机端口P3.2口所输入的脉冲数通过外中断0服务程序进行计数。每计数过一个圈脉冲数,单片机就会对里程进行一次数据存储操作。当车轮每转一圈时,通过霍尔传感器将圈脉冲数送入到单片机,通过定时/计数器计数出脉冲数,然后通过乘法子程序便可以计算出里程数。

⑷ 速度计算子程序

轮子转动一圈后的计时数据通过外部中断1服务程序来处理。当标志位为1时,计数溢出,放入最大时间值;当标志位为0时,将存储器TL1、TH1、6CH、6DH中的值放入到68H~6BH单元。定时/计数器计算出每转一圈所花费的时间,再用车轮的周长除以时间便可以得出自行车的速度。

⑸ 显示子程序

采用动态扫描显示接口电路。本程序中位选通的位选信号由P2.0~P2.3信号一起组成,段选通的段选信号则由P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7信号一起组成。首先我们把将要显示的数据送入到存储单元中去,,然后再把数据送入到段选通所对应的地址中,最后选通某一个LED,逐步逐步地完成对LED的显示。

3结论

我们对设计样机进行了软件硬件的检测,发现各项技术指标均达到设计要求。此外,为了使产品更加的完善,我们还提出了以下改进措施:

① 在断电后为了使之前记录过的里程值不会清零,我们可以尝试采用EEPROM数据存储器。

② 装置还可用于其他机动车上,若要记录10万公里以上的里程值,可以加宽LED显示器的位数。

本系统硬件部分所采用的元器件大都价格低廉、使用广泛,这就意味着本系统容易实现,且成本不高。本次设计电路适用性广泛,不仅仅可以用于自行车速度里程表,其他机动车如电动车、摩托车等都可以使用。

参考文献:

[1] 楼然苗, 李光飞. 51系列单片机设计实例. [M].北京:北京航空航天大学出版社, 2006.

[2 松井邦彦, 梁瑞林. 传感器应用技术141例. [M].北京:科学出版社, 2006.

[3] 李朝青. 单片机原理及接口技术. [M].北京:北京航空航天大学出版社, 1994.

[4] 张洪润, 张亚凡. 传感器技术与应用教程. [M].北京:清华大学出版社, 2005.

[5] 张毅刚, 刘杰. MCS-51单片机原理及应用. [M]. 哈尔滨:哈尔滨工业大学出版社,2004.

[6] 黄河, 郭纪林. 单片机原理及应用. [M]. 大连:大连理工大学出版社, 2006.

[7] 刘灿军. 实用传感器. [M].北京:国防工业出版社, 2004.

[8] 何希才. 传感器及其应用. [M].北京:国防工业出版社, 2001.

[9] 陈雪丽. 单片机原理及接口技术. [M].北京:化学工业出版社, 2005.

[10] 李勋, 刘源, 李静东. 单片机实用教程. [M].北京:北京航空航天大学出版社, 2006.

猜你喜欢
里程单片机速度
速度
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
腾势400 用在上海市区的来回穿梭克服里程焦虑
幸福合力 开启幸福里程
幸福合力 开启幸福里程
比速度更速度——“光脑”来了
算里程
Microchip推出两个全新PIC单片机系列