欢迎来到沃文网! | 帮助中心 分享知识,传播智慧!
沃文网
全部分类
  • 教学课件>
  • 医学资料>
  • 技术资料>
  • 学术论文>
  • 资格考试>
  • 建筑施工>
  • 实用文档>
  • 其他资料>
  • ImageVerifierCode 换一换
    首页 沃文网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于单片机自行车测速系统设计.doc

    • 资源ID:888528       资源大小:232.60KB        全文页数:27页
    • 资源格式: DOC        下载积分:20积分
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录 微博登录
    二维码
    微信扫一扫登录
    下载资源需要20积分
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,下载更划算!
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于单片机自行车测速系统设计.doc

    1、基于单片机自行车测速系统设计基于单片机自行车测速系统设计摘 要.Keyword:Mileage / speed; Hall element; Single chip microcomputer; LED引言自行车被发明及使用到现在已有两百多年的历史,这两百年间人类在不断的尝试与研发过程中,将玩具式的木马车转换到今日各式新颖休闲运动自行车,自行车发展的目的也从最早的交通代步的工具转换成休闲娱乐运动的用途。随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。因此,人们希望自行车的功用更强大,能给人们带来更多的方便。自行车里程速度表作为自行车的一大

    2、辅助工具也正是随着这个要求而迅速发展的,其功能也逐渐从单一的里程显示发展到速度、时间显示,甚至有的还具有测量骑车人的心跳、显示骑车人热量消耗等功能。本设计采用了MCS-51系列单片机设计一种体积小、操作简单的便携式自行车的速度里程表,它能自动地显示当前自行车行走的距离及运行的速度。 第1章 系统总方案论证与分析1 课题主要任务及内容本课题主要任务是利用霍尔元件、单片机等部件设计一个可用LED数码管实时显示里程和速度的自行车的速度里程表。本文主要介绍了自行车的速度里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。本文首先扼要对该课题的任务进行方案论证

    3、,包括硬件方案和软件方案的设计;继而具体介绍了自行车的速度里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行了系统的总结。 具体的硬件电路包括AT89C52单片机的外围电路以及LED显示电路等。软件设计包括:芯片的初始化程序、定时中断采样子程序、显示子程序等,软件采用汇编语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。 2 任务分析与实现本设计的任务是:以通用MCS-51单片机为处理核心,用传感器将车轮的转数

    4、转换为电脉冲,进行处理后送入单片机。里程及速度的测量,是经过MCS-51的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,其结果通过LED显示器显示出来。本系统总体思路如下:假定轮圈的周长为L,在轮圈上安装m个永久磁铁,则测得的里程值最大误差为L/m。经综合分析,本设计中取m=1。当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P3.2中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n轮圈的周长为L的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。当里程键按下时,里程指示灯亮,LE

    5、D切换显示当前里程,与当速度键按下时,速度指示灯亮,LED切换显示当前速度。要求达到的各项指标及实现方法如下:1. 利用霍尔传感器产生里程数的脉冲信号。2. 对脉冲信号进行计数。实现:利用单片机自带的计数器T1对霍尔传感器脉冲信号进行计数。3. 对数据进行处理,要求用LED显示里程总数和即时速度。实现:利用软件编程,对数据进行处理得到需要的数值。最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示电路可显示里程及速度。3 硬件方案设计测速,首先要解决是采样的问题。使用单片机进行测速,可以使用简单的脉冲计数法。只要转轴每旋转一周,产生一个或固定的多个脉冲,将脉冲送

    6、入单片机中进行计算,即可获得转速的信息。常用的测速元件有霍尔传感器、光电传感器和光电编码器。里程测量传感器的选择也有以下几种方案:使用光敏电阻对里程进行测量、利用编码器对车轮的圈数进行测量、利用霍尔传感器对里程进行测量、利用干簧管型传感器测量里程。光敏电阻对光特别敏感,当白天行驶时,外界光源将导致光敏电阻发出错误信号;光敏电阻对环境的要求相当高,如果光敏或发光二极管被泥沙或灰尘所覆盖,光敏电阻就不能再进行准确测量;而编码器必须安装在车轴上,安装较为复杂;霍尔元件或干簧管不但不受天气的影响,即使被泥沙或灰尘覆盖也不会有影响,而且安装方便。所以本设计采用霍尔元件对里程与速度进行测量,既简单易行,又

    7、经济适用。使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的齿轮盘上粘上一粒磁钢,霍尔元件固定在前叉上,当车子转动时霍尔元件靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在齿轮盘上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。这种传感器不怕灰尘、油污,在工业现场应用广泛。霍尔传感器是对磁敏感的传感元件,常用于信号采集的有A44E,该传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,工作电压范围宽,使用非常方便。A44E

    8、的外形如图1.1所示。1-Vcc 2-GND 3-OUT图1.1 A44E外形图单片机由于将CPU、内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点:1. 体积小、重量轻;2. 电源单一、功耗低;3. 功能强、价格低;4. 全部集成在一块芯片上,布线短、合理;5. 数据大部分在单片机内传送,运行速度快、抗干扰能力强、可靠性高。目前,单片机被广泛的应用于测控系统、工业自动化、智能仪表、集成智能传感器、机电一体化产品、家用电器领域、办公自动化领域、汽车电子与航空航天器电子系统以及单片机的多机系统等领域。在设计中选用的是AT89C52单片机。外

    9、部信号霍尔传感器外部存储器AT89C52单片机里程显示速度显示报警部分图1.2 系统的原理框图4 软件方案设计通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性,遵循模块化设计的原则,采用自顶向下的设计方法。模块化设计使程序的可读性好、修改及完善方便。软件设计包括主程序、行车过程中里程和速度计算子程序、延时子程序、中断服务子程序、显示子程序等等。中断子程序是将传感器产生的信号接入外部中断0,将经过74LS74分频后的信号接入外部中断1,利用中断和定时器对分别对里程进行累加、每转一周的时间进行测量。数据处理子程序是将进入单片机的脉冲信号与实际要显示值之间有一定的对应

    10、关系,经过软件编程显示所需要的值。显示子程序是将数据处理的结果送显示器显示。系统软件总体流程图如图1.3所示。 初始化P3.0=1?计算里程显示里程计算速度显示速度N开始图 1.3 软件总体流程图第2章 硬件电路设计2.1 概述自行车的速度里程表的硬件电路设计是基础部分,它包括信号的捕获、放大、整形,单片机的计算处理,数码管的实时显示和单片机外围基本电路的设计,两大主要器件就是传感器和单片机。传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。磁传感器是一种将磁学量信号转变为电信号的器件或装置。随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的

    11、普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。作为输入信号,这就给磁传感器的快速发展提供了机遇,形成了磁传感器的产业。其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作。单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能。2.2 系统总电路图 图2.1系统总电路图2.3 单片机简介单片机是指集成在一个芯片上的微型计算机,也就是把组成微型计算机的各种功能部件,包括CPU(Central Processing Unit)、随机存储器RAM(Random Access Memory)、

    12、只读存储器ROM(Read-only Memory)、基本输入/输出(Input/Output)接口电路。定时器/计数器等部件都制作在一块集成芯片上,构成一个完整的微型计算机从而实现微型计算机的基本功能。单片机内部结构示意图如图2.2所示。定时/计数器中断系统CPU存储器并行I/O口串口I/O口TXDTXDRXDTINTP0-P3图2.2 单片机内部结构示意图2.3.1 单片机的引脚功能介绍AT89C52是美国ATMEL公司生产的低电压,高性能CMOS 8位单片机,片内含8K Bytes的可反复擦写的只读程序存储器(EPROM)和256 字节的随机存取数据存储器(RAM),器件采用ATMEL公

    13、司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大,AT89C52单片机适合于许多较为复杂控制场合应用。图2.3 AT89C52引脚图AT89C52提供以下标准功能:8K字节Flash闪速存储器,256字节内部RAM,32个I/O口线,3个16位定时/计数器,5个中断源,一个全双工串行通信口,片内具有振荡器及时钟电路。AT89C52管脚图如图2.3所示。2.3.2 单片机中断系统介绍中断是指当计算机执行正常程序时,系统中出现某些急需处理的事件,CPU暂时中止当前的程序,转去执行服务程序,以对发生的

    14、更紧迫的事件进行处理,待处理结束后,CPU自动返回原来的程序执行AT89C52系列单片机的系统有5个中断源,2个优先级,可实现二级中断服务嵌套。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各优中断源的优先级;同一优先级内各终端同时提出中断请求时,由内部的查询逻辑确定其响应次序。采用的外部中断方式包括外部中断0和外部中断1,它们的中断请求信号分别由单片机引脚/P3.2和/P3.3输入。外部中断请求有两种信号方式:电平触发方式和脉冲触发方式。电平触发方式的中断请求是低电平有效。只要在和引脚上出现有效低电平时,就激活外部中断方式。脉冲触发方式的中断

    15、请求则是脉冲的负跳变有效。在这种方式下,在两个相邻机器周期内,和 引脚电平发生变化,即在第一个机器周期内为高电平,第二个机器周期内为低电平,就激活外部中断。由此可见,在脉冲方式下,中断请求信号的高电平和低电平状态都应至少维持一个机器周期,以使CPU采样到电平状态的变化,本次设计所采用的触发方式为脉冲触发方式。2.4 传感器及其测量系统本次设计信号的捕获采用的是霍尔传感器。霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1MHz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰

    16、、无抖动、无回跳、位置重复精度高。取用各种补偿和保护措施的霍尔器件工作温度范围宽,可达55150。按照霍尔器件的功能可将它们分为:霍尔线性器件和霍尔开关器件,前者输出模拟量,后者输出数字量。 按被检测对象的性质可将它们的应用分为:直接应用和间接应用。前者是直接检测出受检测对象本身的磁场或磁特性,后者是检测受检对象上人为设置的磁场,用这个磁场来作被检测的信息的载体。通过它,将许多非电、非磁的物理量例如力、力矩、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。 2.4.1 霍尔传感器的测温原理霍尔传感器是利用霍尔效应制成的一种磁敏传感器。

    17、在置于磁场中的导体或半导体通入电流I,若电流垂直磁场B,则在与磁场和电流都垂直的方向上会出现一个电势差Uh,这种现象称为霍尔效应。利用霍尔效应制成的元件称为霍尔元件。因为它具有结构简单、频率响应宽、灵敏度高、测量线性范围大、抗干扰能力强以及体积小、使用寿命长等一系列特点,因此被广泛应用于测量、自动控制及信息处理等领域。霍尔效应原理图如图2.4所示。图2.4 霍尔效应原理图2.4.2 集成开关型霍尔传感器A44E集成霍尔开关由稳压器A、霍尔电势发生器(即硅霍尔片)B、差分放大器 C、施密特触发器D和OC门输出E五个基本部分组成,如图2.5(a)所示。(1)、(2)、(3)代表集成霍尔开关的三个引

    18、出端点。在电源端加电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。当施加的磁场达到工作点时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,通常称这种状态为开 。当施加的磁场达到释放点时,触发器输出低电压,三极管截止,使OC门输出高电压,这种状态为关 。这样两次电压变换,使霍尔开关完成了一次开关动作。工作点与释放点的差值一定,此差值称为磁滞,在此差值内,V0保持不变,因

    19、而使开关输出稳定可靠,这也就是集电成霍尔开关传感器优良特性之一。传感器主要特性是它的输出特性,即输入磁感应强度B与输出电压V0之间的关系。A44E集成霍尔开关是单稳态型,由测量数据作出的输出特性曲线如图 2.5(b)所示。测量时,在1、2两端加5V直流电压,在输出端3与1之间接一个2kW的负载电阻,如图2.6所示。图2.5 集成开关型霍尔传感器图2.6 集成霍尔开关接线图2.5 其它器件的介绍2.5.1 储存器的介绍AT24C02是一个2K位串行CMOSE2PROM。内部含有256个8 位字节,ATMEL公司的先进CMOS技术实质上减少了器件的功耗。AT24C02有一个16 字节页写缓冲器,该

    20、器件通过I2C总线接口进行操作有一个专门的写保护功能。AT24C02支持I2C总线数据传送协议。数据传送是由产生串行时钟和所有起始停止信号的主器件控制的。主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,通过器件地址输入端 A0、A1和A2可以实现将最多8个24C02器件连接到总线上。管脚图如2.7所示。 图2.7 24C02管脚图SCL串行时钟:AT24C02串行时钟输入管脚用于产生器件所有数据发送或接收的时钟。SDA串行数据/地址:CAT24WC02双向串行数据/地址管脚用于器件所有数据的发送或接收,是一个开漏输出管脚可与其它开漏输出或集电极开路输出进行线

    21、或(wire-OR)。WP写保护:如果WP管脚连接到Vcc所有的内容都被写保护,只能读。当WP管脚连接到Vss或悬空,允许器件进行正常的读/写操作。本次设计采用的24C02是为了防止掉电时里程数据的丢失,由于24C02的数据线和地址线是复用的,采用串口的方式传输数据,所以只用两根线SCL和SDA与单片机传输数据。在软件编程时采用程序包来控制24C02发送或接受数据。2.5.2 74LS74芯片的介绍74LS74是D触发器的一种,它是一个具有记忆功能的二进制信息存储器件,是构成多种时序电路的最基本逻辑单元。触发器具有两个稳定状态,即“0”和“1”,在一定的外界信号作用下,可以从一个稳定状态翻转到

    22、另一个稳定状态。由于其状态的更新发生在CP脉冲的边沿故又称之为上升沿触发的边沿触发器,D触发器的状态只取决于时针到来前D端的状态。引脚图如图2.8所示。图2.8 74LS74引脚图在本题目中74LS74芯片起分频的作用。当车轮每转一圈,霍尔传感器输出一个低电平脉冲,通过74LS74进行二分频后,定时器T1的开启时间为车轮转1圈的时间,这样就可以算出自行车的速度。分频前后对比图如图2.9所示。tt00vv霍尔输出圈脉冲二分频后的波形图2.9 分频前后对比图由图可见,二分频后的波形的高或地电平的时间正好是霍尔传感器开关的一个周期,霍尔传感器输出脉冲到,即P3.2口接收到对圈数计数的脉冲。经74LS

    23、74二分频后的信号输入到,内部定时计数器测得每转一圈所用的时间,通过计算即可得里程值和即时速度。2.5.3 74LS244芯片的介绍本次设计中的采用驱动数码管的芯片为74LS244,74LS244为三态输出的八位缓冲器和线驱动器,若单片机输出口直接接显示部分电路,则电流太小,会导致显示部分不能正常工作。所以在单片机输出口先接入驱动芯片74LS244,增大电流,使LED能够正常工作。其逻辑图如图2.10所示,可以看出74LS244由2组组成、每组由四路输入、输出构成。每组有一个控制端高或低电平决定该组数据被接通还是断开。图2.10 74LS244逻辑图2.6 单片机外围电路的设计2.6.1 时钟

    24、电路的设计时钟是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准,有条不紊地一拍一拍地工作。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。AT89C52片内由一个反相放大器构成振荡器,可以由它产生时钟。常用的时钟电路有两种方式,一种是内部时钟方式,另一种为外部时钟方式。本设计采用前者。单片机内部有一个用于构成振荡器的高增益反相放大器,该高增益反相放大器的输入为芯片引脚XTAL1,输出端为引脚XTAL2。这两个引脚跨接石英晶体振荡器和电容,就构成一个稳定的自激振荡器。单片机内部时钟方式的振荡电路如图2.11所示。图2.11 单片机片内振荡电路电路中的电容

    25、C1和C2常选择为30P左右。对外接电容的值虽然没有严格的要求,但电容的大小会影响振荡器的高低、振荡器的稳定性、起振的快速性和温度的稳定性。而外接晶体的振荡频率的大小,主要取决于单片机的工作频率范围,每一种单片机都有自己的最大工作频率,外接的晶体振荡频率不大于单片机的最大工作频率即可。此外,如果单片机有串行通信,则应该选择振荡频率除以串行通信频率可以除尽的晶体。本设计晶振采用12MHz,则计数周期为S2.6.2 复位电路的设计AT89C52单片机的复位输入引脚RET为AT89C52提供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的0000H地址单元开始执行程序。在89C5

    26、2的时钟电路工作后,只要在RET引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要RET保持高电平,则89C52循环复位。只有当RET由高电平变成低电平以后,89C52才从0000H地址开始执行程序。本系统的复位电路是采用按键复位的电路,如图2.12所示,是常用复位电路之一。单片机复位通过按动按钮产生高电平复位称手动复位。上电时,刚接通电源,电容C相当于瞬间短路,+5V立即加到RET/VPD端,该高电平使89C52全机自动复位,这就是上电复位;若运行过程中需要程序从头执行,只需按动按钮即可。按下按钮,则直接把+5V加到了RET/VPD端从而复位称为手动复位。复位后,P0到P3并行

    27、I/O口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。图2.12 按键复位电路工作原理:通电瞬间,RC电路充电,RST引脚出现高电平,只要RST端保持10ms以上高电平,就能使单片机有效地复位。2.6.3 显示电路的设计本设计中采用LED数码管显示。在单片机系统中,通常用LED数码显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。八段LED显示器由8个发光二极管组成。其中7个发光二极管构成字型“8”的各个笔画段,另一个小数点为dp发光二极管。LED显示器有两种不同的形式:一种是发光二极管的阳极都连在一起的,称之为共阳极LED显示

    28、器;另一种是发光二极管的阴极都连在一起的,称之为共阴极LED显示器。如图2.13所示。本次设计采用共阴极接法。LED显示方式有动态显示和静态显示两种方式。本系统采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于COM端。也就是说我们可以采用分时的方法,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应

    29、,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。图2.13 七(八)段LED显示器本设计P2.0、P2.1、P2.2、P2.3信号一起组成位选通的位选信号,P0.0P0.7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成四个LED的显示。第3章 软件程序设计3.1 概述在硬件设计完毕之后,接下来就是设计中最核心和最为主要的软件部分设计。所谓软件设计就是把软件需求变换成软件的具体设计方案(即模块结构)的过程。模块化结构设计即是根据要求和硬件设计的结

    30、构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程。这样的设计方法,使得系统的整个功能和各部分的功能趋于明朗化。当系统出现问题,就可以根据功能设置找出问题的根源,从而更快地解决问题。所以说,在整个设计过程中,软件设计必须与硬件设计紧密地结合在一起。 基于霍尔传感器自行车的速度里程表的软件设计包括上电初始化程序、中断子程序、速度调用子程序、里程调用子程序、LED显示子程序、延时子程序等几大部分。由于要实现很多功能,所以采用模块化设计,下面就其主要部分分别加以分析。3.2 总体程序设计在主程序模块中,需要完成对各接口芯片的初始化、自行车里程和速度的初始化、中断向量的

    31、设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器、速度寄存器,并对它们进行初始化。然后主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计速等不同的操作。P1.0和P1.1口分别用于显示里程状态和速度状态。P1.2、P1.3、P1.6和P1.7口分别用于设置轮圈的大小,低电平有效。P3.0是用于里程和速度切换的,低电平为显示速度,高电平为显示里程。中断0用于对轮子圈数的计数输入,轮子每转一圈,霍尔传感器输出一个低电平脉冲。将根据里程寄存器中的内容计算和判断出行驶里程数。中断1用于控制定时器T1的启/停,当输入为0时关闭定时器。此控制信号是将

    32、轮子圈数的计数经二分频后形成。这样,每次定时器T1的开启时间刚好为转一圈的时间,根据轮子的周长就可以计算出自行车的速度。其程序流程如图3.1所示。开始初始化P1.2=1?NP1.3=1?P1.6=1?P1.7=1?出错提示将车圈周长调入21H开中断,启动定时器P3.0=1?调用里程处理子程序调用速度处理子程序NNNYYYYNY图3.1 主程序流程图系统程序设计如下:$INCLUDE (REG52.INC)DISPBUFEQU59H ;显示缓冲区从5AH开始SecCounEQU58HSpCounEQU56H;速度计时器单元57H和58H,高位在前(57H单元中)CountEQU55H;显示时的计

    33、数器SpCalcbit00h;要求计算速度的标志,该位为1则主程序进行速度计算,然后清该位HiddenEQU16;消隐码ORG0000HAJMPSTARTORG1BHJMPTIMER1;定时中断1入口ORG30HSTART:MOVSP,#5FH;设置堆栈MOVP1,#0FFHMOVP0,#0FFHMOVP2,#0FFH;初始化,所有显示器、LED灭MOVTMOD,#00010101B;定时器T1工作于方式1,定时器0工作方式1,计数器MOVTH1,#HIGH(65536-3686)MOVTL1,#LOW(65536-3686)SETBTR1SETBET1;开定时器1中断SETBEALOOP:J

    34、NBSpCalc,LOOP;如果未要求计算,转本身循环;标号: 功能:双字节二进制无符号数乘法;入口条件:被乘数在R2、R3中,乘数在R6、R7中。;出口信息:乘积在R2、R3、R4、R5中。;影响资源:PSW、A、B、R2R7 堆栈需求: 字节MOVR2,SpCounMOVR3,SpCoun+1MOVR6,#0MOVR7,#5;测得的数值是每秒计数值,转为分(每一转测12次,故乘5而非60)CALLMULDSEND:MOVSBUF,R2SLP1:JBCTI,SN1;是否送完?AJMPSLP1SN1:MOVSBUF,R3SLP2:JBCTI,SN2AJMPSLP2SN2:MOVSBUF,R4S

    35、LP3:JBCTI,SN3AJMPSLP3SN3:MOVSBUF,R5SLP4:JBCTI,SN4AJMPSLP4SN4:;标号: 功能:双字节十六进制整数转换成双字节码整数;入口条件:待转换的双字节十六进制整数在R6、R7中。;出口信息:转换后的三字节码整数在R3、R4、R5中。;影响资源:PSW、A、R2R7 堆栈需求: 字节MOVA,R4MOVR6,AMOVA,R5MOVR7,A;将乘得的结果送R6R7准备转换,这里结果不可能超过2字节CALLHB2MOVDISPBUF,R3;最高位MOVA,R4;ANLA,#0F0H;去掉低4位SWAPA;将高4位切换到低4位MOVDISPBUF+1,

    36、AMOVA,R4ANLA,#0FHMOVDISPBUF+2,AMOVA,R5ANLA,#0F0HSWAPAMOVDISPBUF+3,AMOVA,R5ANLA,#0FHMOVDISPBUF+4,ACLRSpCalc;清计算标志JMPLOOP3.3 中断子程序设计定时中断是为满足定时或计数的需要而设置的。在单片机内部有两个定时/计数器,以对其中的计数结构进行计数的方法,来实现定时或计数功能。当结构发生计数溢出时,即表明定时时间或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志,作为单片机接受中断请求的标志。这种中断请求是在单片机芯片内部发生的,因此无须在芯片上设置引入端。关中断开始

    37、现场保护开中断中断处理关中断现场恢复开中断中断返回图3.2中断子程序流程图定时/计数器控制寄存器TCON是8位寄存器,地址为88H,可以位寻址。其高4位用于定时/计数器中断控制,低4位借给外部中断,用做中断标志和触发方式选择位。本设计采用定时中断,对自行车的里程和速度进行计数。中断子程序流程图如图3.2所示。 3.4 显示子程序的设计采用动态扫描显示接口电路,动态显示接口电路是把所有显示器的8个笔划段a-h同名端连在一起,而每一个显示器的公共极COM各自独立地受I/O线控制。CPU向字段输出口送出字型码时,所有显示器接收到相同的字型码,但究竟是哪个显示器亮,则取决于COM端。可以采用分时的方法

    38、,轮流控制各个显示器的COM端,使各个显示器轮流点亮。在轮流点亮扫描过程中,每位显示器的点亮时间是极为短暂的(约1ms),由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位显示器并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感。本设计P2.0、P2.1、P2.2、P2.3信号一起组成位选通的位选信号,P0.0P0.7信号一起组成段码选通的段选信号,通过软件编程,先把所要显示的数据放入存储单元,然后把数据送入段选通对应的地址,再选通某一个LED,逐步完成四个LED的显示。开始显示单元首址取显示数据送段码到P0口取段码表首址调用延时送位选到P2口4位显示

    39、结束返回YN修改显示单元地址求下一位位选码图3.3 显示子程序流程图 结 论该课题的主要任务是开发一个以MCS-51单片机为核心的自行车的速度里程表。本设计主要分为硬件部分和软件部分,硬件部分着重考虑硬件电路的简单性,故尽可能简化硬件电路,节省线路板的空间,达到硬件电路最优化设计。软件采用汇编语言编写,采用模块化设计思想,程序可读性强。通过仿真、实验验证了系统的可行,能满足设计要求,达到设计的指标,实现对自行车里程/速度的计算功能,并用LED显示,里程与速度分别根据以下公式求得:里程=脉冲总数车轮周长速度=车轮周长车轮转一圈所用的时间根据此公式将最终显示出里程和速度。当车轮转动,小磁片滑过霍尔

    40、元件时,霍尔元件输出一脉冲,可根据车轮周长计算里程,选择不同的车轮周长,里程数的变化有所不同;当按下开关,显示速度时,LED会根据转速的不同显示不同的数字。本次设计电路简单、低成本,而且能够满足人们对高性能、多功能自行车的要求,可在很多里程/速度测量场合使用,具有广泛的应用前景。参考文献1 李全利.单片机原理及应用技术M.北京: 高等教育出版社,2004.2 楼然苗,李光飞. 51系列单片机设计实例M. 北京航空航天大学出版社,2006.3 徐晨,陈继红等.微机原理及应用M.北京:高等教育出版社,2004.4 姜秀英,姜涛等.传感器与自动检测技术M.北京:中国电力出版社,2009.5 阎焕忠,

    41、 王长涛, 马斌. 单片机控制里程转速表的设计. 沈阳建筑工程学院学报(自然科学版),2002, 4: 145-148.6 曲家骇,王季秩,伺服控制系统中的传感器M. 机械工业出版社. 1998.7 张福学. 传感器使用电路150例.中国技术出版社,1992.8 张友德,赵志英,涂时亮.单片机微机原理,应用与实验M.上海:复旦大学出版社,2003:122-136.致 谢在本次毕业设计过程中我获益匪浅,同时也遇到了许多困难,在看到我的毕业设计题目时,我的感性认识让我感觉题目挺简单,但在理性分析和实际操作过程中却处处碰壁,这都是由于基础知识不牢造成的,但在同学的帮助下我对题目有了一定得认识和了解。在这里我要感谢我的指导老师,是他的耐心教导,和不厌其烦地讲解,使我顺利地完成了毕业设计。也要感谢我的同学们,在我遇到困难时主动帮我解决,使我很快地攻克了一个又一个难关。还要感谢学校领导的关心和关怀。毕业设计已经结束,但是它却给我留下了美好的回忆,在做毕业设计的过程中加深了师生的感情和同学之间的友谊,觉得每一天都是那么的充实和愉快。第 27 页 共 27 页


    注意事项

    本文(基于单片机自行车测速系统设计.doc)为本站会员(风****)主动上传,沃文网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知沃文网(点击联系客服),我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服点击这里,给沃文网发消息,QQ:2622162128 - 联系我们

    版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

    Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1

    陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922