基于51单片机的自行车测速系统设计.doc
《基于51单片机的自行车测速系统设计.doc》由会员分享,可在线阅读,更多相关《基于51单片机的自行车测速系统设计.doc(20页珍藏版)》请在咨信网上搜索。
摘 要 随着居民生活水平的不断提高,人们对于生活质量的要求也日益增加,尤其是对健身的要求。自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车的速度里程表能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程等物理量。而对于自行车运动员来说,最为关心的莫过于一段时间内的训练效果.因为教练要根据一段时间内运动员的训练效果进行评估,从而进行适当的调整已使运动员达到最佳的状态。因此爱好自行车运动的人十分学要一款能测速的装置,以知道自己的运动情况。并根据外界条件,如温度,风速等进行适当的调节,已达到最佳运动的效果。 关键词:单片机、LED显示、里程/速度、霍尔元件 第一章系统总方案分析与设计 1.1课题主要任务及内容 本课题主要任务是利用霍尔元件、单片机等部件设计一个可用LED数码管实时显示里程和速度的自行车的速度里程表。本文主要介绍了自行车的速度里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。 本文首先扼要对该课题的任务进行方案论证,包括硬件方案和软件方案的设计;继而具体介绍了自行车的速度里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;最后对本次设计进行了系统的总结. 具体的硬件电路包括AT89C52单片机、霍尔元件以及LED显示电路等。 软件设计包括:中断子程序设计,里程计算子程序设计,显示子程序设计。软件采用汇编语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。 1。2任务分析与实现 本设计的任务是:以通用AT89C52单片机为处理核心,用传感器将车轮的转数转换为电脉冲,进行处理后送入单片机。里程及速度的测量,是经过AT89C52的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,其结果通过LED显示器显示出来。 本系统总体思路如下:假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n和周长L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v.当里程键按下时,里程指示灯亮,LED切换显示当前里程;当速度键按下时,速度指示灯亮,LED切换显示当前速度。 要求达到的各项指标及实现方法如下: 1。 利用霍尔传感器产生里程数的脉冲信号。 2。 对脉冲信号进行计数. 实现:利用单片机自带的计数器T1对霍尔传感器脉冲信号进行计数。 3. 对数据进行处理,要求用LED显示里程总数和即时速度. 实现:利用软件编程,对数据进行处理得到需要的数值。 最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示电路可显示里程及速度. 第二章系统主要单元模块和速度算法概述 2.1传感器选型 方案一、光电传感器. 光电传感器是应用非常广泛的一种器件,各种各样的形式,如透射式、反射式等,基本原理就是当发射管光照射到接收管时,接收管导通,反之关断.以透射式为例,如图2-1所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则打开.为此可以制作一个遮光叶片如图2—2所示,安装在转轴上,当扇叶经过时,产生脉冲信号.当叶片数较多时,旋转一周可以获得多个脉冲信号。 图2-1 光电传感器的原理图 图2—2 遮光叶片 将光敏电阻安装在自行车前又的一侧,在同等高度的另一侧安上一个高亮度的发光二极管.在同等高度的辐条上贴上一圈黑色材料,并在黑色材料上打上等间距的小孔,这样当小孔经过光敏电阻时,光敏电阻根据光电流的变化发出脉冲,从而测量里程。 方案二、光电编码器 光电编码器的工作原理与光电传感器一样,不过它已将光电传感器、电子电路、码盘等做成一个整体,只要用连轴器将光电传感器的轴与转轴相连,就能获得多种输出信号。它广泛应用于数控机床、回转台、伺服传动、机器人、雷达、军事目标测定等需要检测角度的装置和设备中。 将旋转编码器安装在车轴上,这样每当车轮转过一定的距离编码器就会发出一个脉冲.利用脉冲数对里程进行测量。 方案三、霍尔传感器 霍尔传感器是对磁敏感的传感元件,常用于开关信号采集的有CS3020、CS3040、A04E等,这种传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,输出通常是集电极开路(OC)门输出,工作电压范围宽,使用非常方便。 图2-3 霍尔元件和磁钢实际图 使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的圆周上粘上一粒磁钢,让霍尔开关靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出.如果在圆周上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出, 单片机根据脉冲数来计算里程。霍尔元件和磁钢如图2-3所示。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。这种传感器不怕灰尘、油污,在工业现场应用广泛. 光敏电阻对光特别敏感,当白天行驶时,外界光敏电阻对光特别敏感,当白天行驶时,外界光源导致光敏电阻发出错误信号;光敏电阻对环境的要求相当高,如果光敏电阻或发光二极管被泥沙或灰尘所覆盖,光敏电阻就不能再进行测量;在雾天和雨天光敏电阻的测量的效果也不好。而编码器必须安装在车轴上,这样安装就会给用户带来很多不便。霍尔元件不受天气的影响,即便被泥沙或灰尘覆盖对测量也不会有任何影响.由霍尔元件加整形电路构成的霍尔开关系统,具有输出响应快,数字脉冲性能好,安装方便,性能可靠,不受光线、泥水等因素影响,价格便宜的优点。所以本设计采用方案三霍尔传感器。 2.2单片机选型 本设计用89C52单片机设计自行车里程/速度计。AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。 一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合. AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程)。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本 2.3 显示模块选型 单片机系统中常用的显示器有:发光二极管LED显示器、液晶LCD显示器等.在这里由于单片机测速系统比较简单,所以只考虑LED显示器和LCD显示器。LED显示器工作方式有两种静态显示方式和动态显示方式。 方案一 LED静态显示器:静态显示的特点是每个数码管的段选必须接一个8位数据线来保持显示字形码。当送入一次字形码后,显示字形可一直保持,直到送入新字形码为止.这种方法的优点是占用CPU时间少,显示便于监测和控制.缺点是硬件电路比较复杂,成本较高.LED动态显示器:动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。这样一来,就没有必要每一位数码管配一个锁存器,从而大大地简化了硬件电路.选亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示,给人的印象就是一组稳定的显示数据,不会有闪烁感.动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的. 方案二 用液晶显示器LCD显示信息。 LCD显示器工作原理就是利用液晶的物理特性;通电时排列变得有序,使光线容易通过;不通电时排列混乱,阻止光线通过,说简单点就是让液晶如闸门般地阻隔或让光线穿透. LCD的好处有:与CRT显示器相比,LCD的优点主要包括零辐射、低功耗、散热小、体积小、图像还原精确、字符显示锐利等。 LED背光源技术能够大幅度提升电视画面的对比度和色彩表现力,同时具有节能环保等诸多优点,势必成为未来电子显示技术的发展趋势。LED技术具有非常明显的三大优势.第一,它显示的色彩更加丰富,色彩数量可超过目前传统CCFL冷阴极荧光管背光灯的1倍以上;第二,LED背光源亮度可以随着画面亮度进行主动调节,可节能30%以上;第三,LED背光源不含铅和汞等有毒有害物质,是真正的绿色环保光源。本课题选用LED动态显示器. 2。4 算法概述 假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m.经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3。2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断.每次中断代表车轮转动一圈,中断数n和周长L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。 第三章系统硬件设计 3。1单片机主控电路 3。1。1单片机概述 单片机就是在一块半导体硅片上集成了微处理器(CPU),存储器(RAM,ROM,EPROM)和各种输入、输出接口(定时器 /计数器,并行I/O口,串行口,A/D转换器以及脉宽调制器PWM等),这样一块集成电路芯片具有一台计算机的属性,因而被称为单片微型计算机,简称单片机. 单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能.目前,单片机被广泛的应用于测控系统、工业自动化、智能仪表、集成智能传感器、机电一体化产品、家用电器领域、办公自动化领域、汽车电子与航空航天器电子系统以及单片机的多机系统等领域。在设计中选用的是AT89C52单片机。 单片机由于将CPU、内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点: 1。 体积小、重量轻; 2. 电源单一、功耗低; 3. 功能强、价格低; 4。 全部集成在一块芯片上,布线短、合理; 本设计用89C52单片机设计自行车里程/速度计。AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。 一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合. (背景色) AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,但不可以在线编程(S系列的才支持在线编程).其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本. AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。 本设计选用AT89C52单片机,AT89C52是一种低功耗、高性能CMOS 8位微控制器。使用Atmel 公司高密度非易失性存储器技术制造,可与工业AT89C51 产品指令和引脚完全兼容。 AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS—51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用。 主要功能特性 1、兼容MCS51指令系统 2、8k可反复擦写(大于1000次)Flash ROM; 3、32个双向I/O口; 4、256x8bit内部RAM; 5、3个16位可编程定时/计数器; 6、时钟频率0—24MHz; 7、2个串行中断,可编程UART串行通道; 8、2个外部中断源,共5个中断源; 9、2个读写中断口线,3级加密位; 10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能; 11、有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。 单片机内部结构示意图如图3—1所示。 定时/计数器 中断系统 CPU 存储器 并行I/O口 串口I/O口 TXD TXD RXD T INT P0-P3 图3—1 3。1.2单片机的引脚功能介绍 AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8K Bytes的可反复擦写的只读程序存储器(EPROM)和256 字节的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS—51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大,AT89C52单片机适合于许多较为复杂控制场合应用. 图3—2 AT89C52引脚图 AT89C52提供以下标准功能:8K字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,5个中断源,一个全双工串行通信口,片内具有振荡器及时钟电路。AT89C52管脚图如图2。3所示。 AT89C2051芯片的20个引脚功能为: 1. Vcc:电源电压。 2. P1口:P1口是一8位双向I/O口。P1.0和P1。1要求外部上拉电阻。P1。0和P1。1还分别作为片内精密模拟比较器的同相输入(AIN0)和反相输入(AIN1).P1口输出缓冲器可吸收20mA电流并能直接驱动LED显示.当P1口引脚写入“1”时,其可用作输入端。当引脚P1。2~P1。7用作输入并被外部拉低时,它们将因内部的上拉电阻而流出电流(IIL)。 P1口还在闪速编程和程序校验期间接收代码数据. 3. P3口:P3口的P3.0~P3。5、P3.7是带有内部上拉电阻的七个双向I/0引脚。P3。6用于固定输入片内比较器的输出信号并且它作为一通用I/O引脚而不可访问.P3口缓冲器可吸收20mA电流。用作输入时,被外部拉低P3口引脚将用上拉电阻而流出电流(IIL). P3口还用于实现AT89C2051的各种功能,如下表3-3所示。P3口还接收一些用于闪速存储器编程和程序校验的控制信号。 4。 RST:复位输入。RST一旦变成高电平,所有的I/O引脚就复位到“1"。当振荡器正在运行时,持续给出RST引脚两个机器周期的高电平便可完成复位。每一个机器周期需12个振荡器或时钟周期。 5. XTAL1:作为振荡器反相放大器的输入和内部时钟发生器的输入. 6. XTAL2:作为振荡器反相放大器的输出。 表3—3P3口的功能 P3口引脚 功能 P3。0 P3。1 P3.2 P3.3 P3。4 P3。5 RXD(串行输入端口) TXD(串行输出端口) INT0(外中断0) INT1(外中断1) TO(定时器0外部输入) T1(定时器1外部输入) 3.1.3单片机中断系统介绍 中断是指当计算机执行正常程序时,系统中出现某些急需处理的事件,CPU暂时中止当前的程序,转去执行服务程序,以对发生的更紧迫的事件进行处理,待处理结束后,CPU自动返回原来的程序执行AT89C52系列单片机的系统有5个中断源,2个优先级,可实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各优中断源的优先级;同一优先级内各终端同时提出中断请求时,由内部的查询逻辑确定其响应次序。 采用的外部中断方式包括外部中断0和外部中断1,它们的中断请求信号分别由单片机引脚/P3.2和/P3.3输入。 外部中断请求有两种信号方式:电平触发方式和脉冲触发方式。电平触发方式的中断请求是低电平有效。只要在和引脚上出现有效低电平时,就激活外部中断方式。脉冲触发方式的中断请求则是脉冲的负跳变有效。在这种方式下,在两个相邻机器周期内,和 引脚电平发生变化,即在第一个机器周期内为高电平,第二个机器周期内为低电平,就激活外部中断。由此可见,在脉冲方式下,中断请求信号的高电平和低电平状态都应至少维持一个机器周期,以使CPU采样到电平状态的变化,本次设计所采用的触发方式为脉冲触发方式。 3。1.4单片机定时器/计数器功能介绍 AT89C52单片机定时器/计数器的工作由两个特殊功能寄存器控制.TMOD用于设置其工作方式;TCON用于控制其启动和中断请求。 1.工作方式寄存器TMOD 工作方式寄存器TMOD用于设置定时/计数器的工作方式。 GATE:门控制。GATE=0时,只要用软件使TCON中的TR0或TR1为1,就可以启动定时/计数器工作;GATE=1时,要用软件TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作. C/:定时/计数模式选择位。C/=0为定时模式;C/=1时为计数模式. M1M2:工作方式设置位。定时/计数器有4种工作方式,由M1M2进行设置. 本次设计TMOD为90H,即选通定时/计数器为1、定时功能、工作方式1.工作方式为16位定时/计数器。 2。控制寄存器TCON TF1(TCON。7)定时/计数器T1溢出中断请求标志位。定时/计数器T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清零。T1工作时,CPU可随时查询TF的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清零,同硬件置1或清零的效果一样. TR1(TCON。6)定时/计数器T1运行控制位。TR1置1时,定时/计数器T1开始工作;TR1置0时,定时/计数器T1停止工作。TR1由软件置1或清0. TF0(TCON.5)定时/计数器T0溢出中断请求标志位。 TR0(TCON。4)定时/计数器T0运行控制位。 3。2霍尔传感器的测温原理 在信号脉冲发生源上,本系统采用的是开关型霍尔传感器。 以磁场作为媒介,利用霍尔传感器可以检测多种物理量,如位移、振动、转速、加速度、流量、电流、电功率等。它不仅可以实现非接触测量,并且采用永久磁铁产生磁场,不需附加能源.另外霍尔传感器尺寸小、价格便宜、应用电路简单、性能可靠,因而获得极为广泛的应用。除了直接利用霍尔传感器外,还利用它开发出各种派生的传感器. 金属或半导体薄片的两个端面通以控制电流Ic,并在薄片的垂直方向上施加磁感应强度为B的磁场,则在垂直于电流和磁场的方向上将产生电势Uh,称为霍尔电势或霍尔电压(如图l所示)。霍尔电势Uh=KhIcB(其中Kh为霍尔元件灵敏度,它与所用的材料及几何尺寸有关)。这种现象称为霍尔效应,而用这种效应制成的元件称为霍尔元件.由于霍尔元件输出的电压信号较小,并且有一定温度误差,目前已较少直接使用霍尔元件作传感器.霍尔传感器原理图如图3—4所示。 图3—4霍尔传感器磁场效应 本系统采用开关型霍尔传感器A04E.开关型霍尔传感器是一种集成传感器,它内部含有霍尔元件、放大器、稳压电源、带一定滞后特性的比较器及集电极开路输出部分等,如图3—5所示。 图3—5 开关型霍尔传感器内部结构图 开关型霍尔传感器的工作特性如图3-6所示。 图3—6开关型霍尔传感器工作特性 当外加的磁感应强度超过动作点Bop时,传感器输出低电平,但磁感应强度降到动作点Bop以下时,传感器输出电平不变,一直要降到释放点BRE时,传感器才由低电平跃变为高电平。Bop与Bre之间的滞后(或称为回差)使开关动作更为可靠。 图3—7 霍尔传感器检测转速示意图 霍尔传感器检测转速示意图3—7如下。在非磁材料的圆盘边上粘贴一块磁钢,霍尔传感器固定在圆盘外缘附近。圆盘每转动一圈霍尔传感器便输出一个脉冲。通过单片机测量产生脉冲的频率,就可以得出圆盘的转速。同样道理,根据圆盘(车轮)的转速,再结合圆盘的周长就是计算出物体的位移.如果要增加测量位移精度,可以在圆盘(车轮)上多增加几个磁钢。 由于传感器内部为集电极开路输出,所以需外接一个上拉电阻,其阻值与电源电压大小有关,一般取1~2k,如图3-8所示. 图3—8 传感器输出电路 3。3存储器电路 AT24C02是美国ATMEL公司的低功耗CMOS串行EEPROM,它是内含256×8位存储空间,具有工作电压宽(2。5~5。5V)、擦写次数多(大于10000次)、写入速度快(小于10ms)等特点。 AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址.在AT89C2051试验开发板上它们都接地,第8脚和第4脚分别为正、负电源。第5脚SDA为串行数据输入/输出,数据通过这条双向I2C总线串行传送,在AT89C2051试验开发板上和单片机的P3。5连接。第6脚SCL为串行时钟输入线,在AT89C2051试验开发板上和单片机的P3。6连接.SDA和SCL都需要和正电源间各接一个5。1K的电阻上拉.第7脚需要接地。 AT24C02中带有片内地址寄存器.每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写.所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据. AT24C02是CMOS2048位串行E2PROM,在内部的组织成256×8位.AT24C02的特点是具有允许在简单的二线总线上工作的串行接口和软件协议。在本设计中用芯片AT24C02的SDA端与单片机的P3。7口相连,SCL端与单片机的P3。5口相连。因为在这个I2C总线上只有一个器件,所以把AT24C02的地址设为000,即把A0、A2、A3都接地。单片机计算出来的里程数据通过SDA、SCL向AT24C02输送数据。单片机首先向AT24C02发送写信号,当确认后从单片机内部的数据储存单元提取数据然后向AT24C02的内部地址传送数据。当显示里程时,单片机首先向AT24C02发送读信号,然后确认后,单片机从AT24C02内部的地址向单片机的读出单元字节读出数据,供显示所用。与单片机的接口如图3—9所示。 图3—9AT24CO2与单片机的接口电路 3.474LS74芯片 本次设计中的采用驱动数码管的芯片为74LS244,74LS244为三态输出的八位缓冲器和线驱动器,若单片机输出口直接接显示部分电路,则电流太小,会导致显示部分不能正常工作。所以在单片机输出口先接入驱动芯片74LS244,增大电流,使LED能够正常工作.其逻辑图如图3-10所示,可以看出74LS244由2组组成、每组由四路输入、输出构成.每组有一个控制端高或低电平决定该组数据被接通还是断开。 图3-10 74LS244逻辑图 74LS74是D触发器的一种,它是一个具有记忆功能的二进制信息存储器件,是构成多种时序电路的最基本逻辑单元。触发器具有两个稳定状态,即“0”和“1”,在一定的外界信号作用下,可以从一个稳定状态翻转到另一个稳定状态。由于其状态的更新发生在CP脉冲的边沿故又称之为上升沿触发的边沿触发器,D触发器的状态只取决于时针到来前D端的状态。引脚图如图3—11所示。 图3-11 74LS74引脚图 在本题目中74LS74芯片起分频的作用.当车轮每转一圈,霍尔传感器输出一个低电平脉冲,通过74LS74进行二分频后,定时器T1的开启时间为车轮转1圈的时间,这样就可以算出自行车的速度。分频前后对比图如图3—12所示. t t 0 0 v v 霍尔输出圈脉冲 二分频后的波形 图3—12 分频前后对比图 由图可见,二分频后的波形的高或地电平的时间正好是霍尔传感器开关的一个周期,霍尔传感器输出脉冲到,即P3。2口接收到对圈数计数的脉冲。经74LS74二分频后的信号输入到,内部定时计数器测得每转一圈所用的时间,通过计算即可得里程值和即时速度. 3.5时钟电路的设计 时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。AT89C52片内由一个反相放大器构成振荡器,可以由它产生时钟.常用的时钟电路有两种方式,一种是内部时钟方式,另一种为外部时钟方式。本设计采用前者。 单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和电容,就构成一个稳定的自激振荡器。单片机内部时钟方式的振荡电路如图3—13所示. 图3-13单片机片内振荡电路 电路中的电容C1和C2常选择为30PF左右。对外接电容的值虽然没有严格的要求,但电容的大小会影响振荡器的高低、振荡器的稳定性、起振的快速性和温度的稳定性。而外接晶体的振荡频率的大小,主要取决于单片机的工作频率范围,每一种单片机都有自己的最大工作频率,外接的晶体振荡频率不大于单片机的最大工作频率即可.此外,如果单片机有串行通信,则应该选择振荡频率除以串行通信频率可以除尽的晶体。本设计晶振采用12MHz,故计数周期为1us。 3。6 复位电路的设计 AT89C52单片机的复位输入引脚RET为AT89C52提供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的0000H地址单元开始执行程序。在89C52的时钟电路工作后,只要在RET引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要RET保持高电平,则89C52循环复位。只有当RET由高电平变成低电平以后,89C52才从0000H地址开始执行程序。 本系统的复位电路是采用按键复位的电路,如图3-14所示,是常用复位电路之一。单片机复位通过按动按钮产生高电平复位称手动复位。上电时,刚接通电源,电容C相当于瞬间短路,+5V立即加到RET/VPD端,该高电平使89C52全机自动复位,这就是上电复位;若运行过程中需要程序从头执行,只需按动按钮即可。按下按钮,则直接把+5V加到了RET/VPD端从而复位称为手动复位。复位后,P0到P3并行I/O口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。 图3—14按键复位电路 工作原理:通电瞬间,RC电路充电,RST引脚出现高电平,只要RST端保持24ms以上高电平,就能使单片机有效地复位。 3.7显示电路的设计 本设计中采用LED数码管显示。在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。八段LED显示器由8个发光二极管组成。其中7个发光二极管构成字型“8"的各个笔画段,另一个小数点为dp发光二极管。LED显示器有两种不同的形式:一种是发光二极管的阳极都连在一起的,称之为共阳极LED显示器;另一种是发光二极管的阴极都连在一起的,称之为共阴极LED显示器。如图3-15所示。本次设计采用共阴极接法。 LED显示方式有动态显示和静态显示两种方式。本系统采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a—h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于COM端。也就是说我们可以采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮.在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感. 图3-15七(八)段LED显示器 本设计P2.0、P2.1、P2.2、P2。3信号一起组成位选通的位选信号,P0。0~P0。7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成四个LED的显示. 第四章系统软件设计 4。1概述 在硬件设计完毕之后,接下来就是设计中最核心和最为主要的软件部分设计。所谓软件设计就是把软件需求变换成软件的具体设计方案(即模块结构)的过程。模块化结构设计即是根据要求和硬件设计的结构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程.这样的设计方法,使得系统的整个功能和各部分的功能趋于明朗化。当系统出现问题,就可以根据功能设置找出问题的根源,从而更快地解决问题.所以说,在整个设计过程中,软件设计必须与硬件设计紧密地结合在一起。 基于霍尔传感器自行车的速度里程表的软件设计包括中断子程序、里程调用子程序、LED显示子程序等几大部分。由于要实现很多功能,所以采用模块化设计,下面就其主要部分分别加以分析。 4。2总体程序设计 在主程序模块中,需要完成对各接口芯片的初始化、自行车里程和速度的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器、速度寄存器,并对它们进行初始化.然后主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计速等不同的操作。 P1.0和P1。1口分别用于显示里程状态和速度状态。P1.2、P1.3、P1。6和P1。7口分别用于设置轮圈的大小,低电平有效。P3.0是用于里程和速度切换的,低电平为显示速度,高电平为显示里程.中断0是对轮子圈数的计数输入,轮子每转一圈,霍尔传感器输出一个低电平脉冲。将根据里程寄存器中的内容计算和判断出行驶里程数.中断1用于控制定时器T1的启/停,当输入为0时关闭定时器。此控制信号是将轮子圈数的计数经二分频后形成.这样,每次定时器T1的开启时间刚好为转一圈的时间,根据轮子的周长就可以计算出自行车的速度.其程序流程如图4—1所示。 开始 初始化 P1.2=1? N P1.3=1? P1.6=1? P1.7=1? 出错提示 将车圈周长调入21H 开中断,启动定时器 P3.0=1? 调用里程处理子程序 调用速度处理子程序 N N N Y Y Y Y N Y 图4-1主程序流程图 系统程序设计如下: $INCLUDE (REG52。INC) DISPBUF EQU 59H ;显示缓冲区从5AH开始 SecCoun EQU 58H SpCoun EQU 56H ;速度计时器单元57H和58H,高位在前(57H单 元中) Count EQU 55H; 显示时的计数器 SpCalc bit 00h ;要求计算速度的标志,该位为1则主程序进行 速度计算,然后清该位 Hidden EQU 16 ;消隐码 ORG 0000H AJMP START ORG 1BH JMP TIMER1 ;定时中断1入口 ORG 30H START: MOV SP,#5FH ;设置堆栈 MOV P1,#0FFH MOV P0,#0FFH MOV P2,#0FFH ;初始化,所有显示器、LED灭 MOV TMOD,#00010101B ;定时器T1工作于方式1,定时器0工作方式1, 计数器 MOV TH1,#HIGH(65536—3686) MOV TL1,#LOW(65536-3686) SETB TR1 SETB ET1 ;开定时器1中断 SETB EA LOOP: JNB SpCalc,LOOP ;如果未要求计算,转本身循环 ;标号: MULD 功能:双字节二进制无符号数乘法 ;入口条件:被乘数在R2、R3中,乘数在R6、R7中. ;出口信息:乘积在R2、R3、R4、R5中。 ;影响资源:PSW、A、B、R2~R7 堆栈需求: 2字节 MOV R2,SpCoun MOV R3,SpCoun+1 MOV R6,#0 MOV R7,#5 ;测得的数值是每秒计数值,转为分(每一转测 12次,故乘5而非60) CALL MULD SEND: MOV SBUF,R2 SLP1: JBC TI,SN1 ;是否送完? AJMP SLP1 SN1: MOV SBUF,R3 SLP2: JBC TI,SN2 AJMP SLP2 SN2: MOV SBUF,R4 SLP3: JBC TI,SN3 AJMP SLP3 SN3: MOV SBUF,R5 SLP4: JBC TI,SN4 AJMP SLP4 SN4: ;标号: HB2 功能:双字节十六进制整数转换成双字节BCD码整数 ;入口条件:待转换的双字节十六进制整数在R6、R7中。 ;出口信息:转换后的三字节BCD码整数在R3、R4、R5中. ;影响资源:PSW、A、R2~R7 堆栈需求: 2字节 MOV A,R4 MOV R6,A MOV A,R5 MOV R7,A ;将乘得的结果送R6R7准备转换,这里结果不可能超过2 字节 CALL HB2 MOV DISPBUF,R3 ;最高位 MOV A,R4 ; ANL A,#0F0H ;去掉低4位 SWAP A ;将高4位切换到低4位 MOV DISPBUF+1,A MOV A,R4 ANL A,#0FH MOV DISPBUF+2,A MOV A,R5 ANL A,#0F0H SWAP A MOV DISPBUF+3,A MOV A,R5 ANL A,#0FH MOV DISPBUF+4,A CLR SpCalc ;清计算标志 JMP LOOP 4。3中断子程序设计 定时中断是为满足定时或计数的需要而设置的。在单片机内部有两个定时/计数器,以对其中的计数结构进行计数的方法,来实现定时或计数功能.当结构发生计数溢出时,即表明定时时间或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志,作为单片机接受中断请求的标志。这种中断请求是在单片机芯片内部发生的,因此无须在芯片上设置引入端。 定时/计数器控制寄存器TCON是8位寄存器,地址为88H,可以位寻址。其高4位用于定时/计数器中断控制,低4位借给外部中断,用做中断标志和触发方式选择位。本设计采用定时中断,对自行车的里程和速度进行计数。中断子程序流程图如图4-2所示。 关中断 开始 现场保护 开中断 中断处理 关中断 现场恢复 开中断 中断返回 图4—2中断子程序流程图 4。4里程计算子程序 外部中断0服务程序用于对单片机P3。2口输入的圈数脉冲进行计数,为十六进制计数器。60H为低位,62H为高位.每次计数一次后,对里程数据进行一次存储操作。当车轮每转一圈,通过霍尔元件将脉冲数输入单片机内,通过计数器计出脉冲数,再用乘法子程序算出里程数.里程处理子程序流程图如图4-3所示。 开始 点亮里程指示 将车圈数转换成里程- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 自行车 测速 系统 设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文