基于AT89C52光电传感器计数控制仪的设计

时间:2022-10-19 12:05:30

基于AT89C52光电传感器计数控制仪的设计

摘要:本文主要阐述一种基于霍尔元件行车计数控制仪的设计,以 AT89C52 单片机为核心,E18-D80NK光电传感器测转数,实现对计数的控制及显示。采用模块化设计思想,硬件部分利用霍尔元件将行车脉冲圈数传入单片机系统进行工作,该系统电路简单,子程序具有通用性,符合设计要求。

关键词:光电传感器;单片机;LED显示

1引言

1.1设计的意义及远景

随着居民生活水平的不断提高,各种计数控制仪正迅速发展,其功能也逐渐从单一的里程显示发展到速度、时间及行车人能量消耗等功能。本设计采用了MCS-51系列单片机设计一款便携式行车里程/速度计,它能自动实现对自行车里程和速度的测量。通过硬件方案和软件方案的设计,具体介绍了行车速度与里程控制仪的硬件设计和软件设计;针对在仿真过程中和硬件搭建过程中遇到的问题进行了具体分析与说明,并对其进行了经济效益分析与论证。

2行车速度与里程控制仪设计方案

2.1设计系统框图

本系统框图如图2.1所示

2.2设计工作原理

本设计的任务是以AT89C52为处理核心,用光电传感器接收外部车轮脉冲信号,并将车轮的转数转换为电脉冲信号进行计数,通过软件处理方式对数据进行处理进而得到需要的数值后送入单片机。里程及速度的测量,是经过MCS-51的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出的,其结果通过LED显示器显示出来。

3硬件电路的设计

3.1 时钟电路的设计

本设计采用内部时钟方式,由于AT89C52片内有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和电容,就构成一个稳定的自激振荡图3.1所示。

该系统晶振采用12MHz,则计数周期为T=

3.2 复位电路的设计

本系统的复位电路是采用按键复位的电路,如图3.2所示;上电时,刚接通电源,电容C相当于瞬间短路,+5V立即加到RET/VPD端,该高电平使89C52全机自动复位,这就是上电复位;复位后,P0到P3并行I/O口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。按键复位电路如图3.2所示。

3.3 显示电路的设计

本设计中采用共阴极八段LED数码管显示,P2.0―P2.3信号一起组成位选通的位选信号,P0.0―P0.7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成四个LED的显示。

3.4报警电路的设计

本报警电路采用蜂鸣器报警,当即时速度超过预定值是蜂鸣器响,指示灯闪烁,提示应该减速。报警电路图如图3.3所示

4软件电路的设计

4.1中断子程序的设计

4.1.1里程计算子程序

外中断0服务程序用于对单片机P3.2口输入的圈脉冲进行计数,为十六进制计数器。60H为低位,62H为高位。每次计数一次后,对里程数据进行一次存储操作。当车轮每转一圈,通过霍尔元件将脉冲数输入单片机内,通过计数器计出脉冲数,再用乘法子程序算出里程数。

4.1.2速度计算子程序

外中断1服务程序用于处理轮子转动一圈后的计时数据。当标志位(00H)为1时,说明计数溢出,放入最大时间值(为#0FFH);当标志位为0时,将计数单元(TL1、TH1、6CH、6DH)的值放入68H~6BH单元。通过定时器计出每转一圈所用的时间,用自行车车轮的周长除以时间就得出自行车的速度。

4.2显示子程序的设计

本次设计采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于COM端。也就是说我们可以采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。

5、系统调试与分析

5.1 系统仿真

利用PROTEUS ISIS编辑环境所提供的电器规则检查命令对设计进行检查。本仿真系统将源代码的编辑和编译整合到同一设计环境中,这样使得用户可以在设计中直接编辑代码,并且很容易地查看到用户对源程序修改后对仿真结果的影响。源代码通过编译无误后,就可以进行仿真,在仿真过程中不断完善电路和程序的功能最后达到本次设计的目的。

5.2硬件电路的搭及调试故障分析

5.2.1 P0口显示高阻态

正常情况下P0口输出应为高(红色)低(蓝色)互换,但在实际情况下P0口出现了高阻态(灰色),经翻阅资料查得P0口做I/O口是应接上拉电阻。在加上上拉电阻后,P0口输出正常。

5.2.1 传感器输出电压过小

在焊接硬件过程中测量传感器输出端高电压0.2V到0.3V之间,达不到4V以上,经分析在传感器输出端叫2K的上拉电阻,传感器输出端输出电压在正常范围内变化。

5.2.3 单片机不计数

在磁铁来回靠近光电传感器时单片机始终显示4个0,经检查传感器工作正常,指示灯电路工作也正常,在换了一块单片机后电路正常工作,判定原单片机已被烧毁。

6、社会经济效益分析

本设计操作简单、成本低、稳定性能良好、易于实现,而且能够满足人们对高性能、多功能行车的要求,软件采用模块化设计,可读性强,方便二次开发。具有广阔的市场发展前景。

参考文献:

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

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

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

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

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

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

[7]刁文兴.自行车电子里程表的初步设计.南京工业职业技术学院学报,2004,6:25-28

[8]许德章等.摩托车电子转速表智能校验仪.自动化仪表,2000,4:23-24

[9]安宗权.电动电子车速里程表分频电路设计.自动化与仪器仪表,2001,5:39-44

[10]阎焕忠,王长涛,马斌.单片机控制里程转速表的设计.沈阳建筑工程学院学报(自然科学版),2002,4:145-148

上一篇:译者主体性之动态研究 下一篇:浅析民营经济及民营经济发展概念