ImageVerifierCode 换一换
格式:DOCX , 页数:49 ,大小:438.97KB ,
资源ID:1669738      下载积分:10 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/1669738.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于单片机的光电式自行车速度里程表设计.docx)为本站上传会员【胜****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于单片机的光电式自行车速度里程表设计.docx

1、 光电式自行车速度里程表设计 摘要 随着科技的迅速发展,单片机的应用也越来越广泛,并带动传统控制检测技术不断更新。现在的里程表大多是电子式的,用数码管或液晶显示器即时显示,显示更加直观。电子式里程表采用接触车速传感器代替软轴传动,可使里程表的安装位置不受距离限制,进一步有效地克服了机械式里程表中的诸多不足。 方案采用了一种以单片机AT89C51为主控机,使用光电传感器进行自行车里程、速度测量的装置。传感器将不同车速产生的不同频率的脉冲信号输入到单片机进行控制与计算,再采用LCD液晶显示模块进行显示,使得自行车的速度与里程数据能直观的显示给使用者。 本设计主要包括自行车轮脉冲采

2、集、键盘输入和数据显示等部分,主程序用C语言编写,完成各项功能及数据的处理。本里程表的设计具有结构简单,成本低廉,显示清晰,稳定可靠等优点。并且可以进行扩充,更方便于使用者。 关键词 光电传感器 单片机 液晶显示器 里程表 THE DESIGN OF BICYCLE ODOMETER ABSTRACT With the rapid development of technology, more and more widespread application of microcomputer, promote the traditional control d

3、etection technology constantly updated. Most of the current electronic odometer, and with the LED digital tube or LCD display real-time, display more intuitive. Electronic odometer flexible shaft using the contact speed sensor instead of driving, mileage tables can be installed without distance lim

4、itations, and further to effectively overcome the mechanical disadvantages of mileage in the table. The plan adopts the system and configuration of combining the microcontroller AT89C51 as the main control computer ,using the photoelectric sensor bicycle odometer, speed measuring devices. when Dif

5、ferent speed pulse signals of different frequencies produced by sensor are input into the microcontroller,after its calculation, liquid crystal will display the datas, making the bike's speed and distance data visually to the user. The design includes a bike wheel pulse acquisition, keyboard in

6、put and data display section, the main program using C language, This paper first needed to "milestones" design of equipment in detail, on the problems existing in the design, explained And then to hardware and software design and implementation of the part made earnest analysis, Then presented sy

7、stem modeling process and the corresponding system based on this model, the control simulation, and the simulation results are compared. ODOMETER目 录 摘要 I ABSTRACT II 1绪论 1 1.1问题由来 1 1.2课题现状 1 1.3设计任务 2 2系统原理概述 3 2.1系统原理总概述 3 2.2系统硬件组成原理 3 2.3软件系统工作流程 4 3 系统硬件设计 5 3.1采集信息部分以及传感器的选择 5

8、3.2轮脉冲检测与转换电路 6 3.2.1. 轮脉冲检测 7 3.2.2. 信号预处理电路 7 3.3 单片机系统部分 9 3.3.1 AT89C51单片机介绍 9 3.3.2定时/计数器的结构及控制 9 3.3.3中断控制 11 3.4单片机外围电路介绍 11 3.4.1复位电路 11 3.4.2晶振电路 12 3.5显示部分 13 3.5.1 LCD液晶显示器 13 3.5.2 显示接口电路设计 15 3.6报警电路 17 3.7键盘控制 17 4软件设计 18 4.1测量算法概述 18 4.2中断子程序的设计 19 4.3 数据处理子程序的设计 20

9、 4.3.1里程计算子程序 21 4.3.2.速度计算子程序 21 4.4显示子程序的设计 22 5设计总结 23 5.1实现目标与特点 24 5.2 结论及不足 25 致谢 26 参考文献 27 附录 28 附录I 系统电路原理图 28 附录II 设计源程序 29 1 绪论 1.1 问题由来 我国是人口大国,也是自行车大国,随着生活节奏的不断加快,自行车已经不仅仅是运输、代步的工具,现在则是代表着绿色、环保、节能。因此其辅助功能也变得越来越重要。而且人们希

10、望自行车的娱乐、休闲、锻炼的功能越来越多,能带来大家更多的健康与快乐。在这个背景下,自行车里程表作为自行车的一大辅助工具迅速发展起来。科学、美观、合理设计自行车里程表有一定的实用价值.它能合理计算出速度及公里数,使运动者运动适量,达到健康运动与代步的最佳效果。 并且随着人们生活水平的逐渐提高,人们对于生活质量的要求也日益增加,尤其是对健身的要求。自行车在中国普遍作为代步工具。而在国外,自行车却是一项十分受欢迎的健身运动。因为它无污染,价位低廉,老少皆宜。而且在运动过程中可以充分享受到大自然,对于忙碌的现代人来说,无疑是一种较好的放松方法。在中国这种情况也在慢慢发生变化。因此爱好自行车运动的人

11、需要一款里程表,以知道自己的运动情况。并根据外界条件,如温度,风速等进行适当的调节,已达到最佳运动的效果。而对于自行车运动员来说,最为关心的莫过于一段时间内的训练效果。因为教练要根据一段时间内运动员的训练效果进行评估,从而进行适当的调整已使运动员达到最佳的状态。因此需要一种装置进行对训练中各种参数的测定记录。 1.2 课题现状 传统的机械式车速表是由旋转磁场作用于转动盘,使转动盘连同车速表指针发生同向的偏转。当电磁转矩与弹簧产生的阻力矩平衡时,指针偏转停留在某一角度上。指针偏转角与车速成正比,因而可用其表示车速。 机械式车速表的缺陷是明显的。由于表盘指针偏转程度正比于软轴的转动时产生的

12、磁力,当转速较低的时候,磁力较小,随转速变化波动较大。因此,低速时车速表指针摆动剧烈、测量及显示精度不高。对于发动机后置的车辆,要将车速表指针的偏转动力由变速箱经软轴等传至驾驶室,软轴必然布置的较长,如何将这种长长的转动软轴从结构上布置妥当,肯定是一件十分困难的事情。 现在的车速表大多是电子式的,用LED数码管或LCD显示,使速度显示更加直观。采用接触车速传感器代替软轴传动,可使车速表的安装位置不受距离限制,有效地克服了机械式车速表中的诸多不足。 电子式车速表更加智能,车速表的功能也更加人性化,如加上了里程累计、超速提醒等功能。 本设计就是针对骑自行车的人们在行进中不能很好的把握自己达到

13、了多大的速度,行驶了多远的距离而设计的。以往的里程表只能进行测量速度,里程,时间,温度等数据,虽然能实现很多的功能,但是其中的一些功能不适合自行车业余爱好者,浪费资源,而且性价比也低,而且也不能很好的把握当前运动量,从而不能很好的实现娱乐和锻炼的效果。而本设计却能实现娱乐和锻炼的双重效果,而且相对业余爱好者性价比更高。 1.3 设计任务  本设计要以单片机为核心,通过光电传感器来检测自行车的运转情况进而实现电动自行车的速度的测量,最后用液晶显示器直观地将速度与里程显示出来,并且在速度高于一定的值时可自动向用户报警,从而达到智能化的目的。 主要设计内容: 1.传感器电路模块设计 2.

14、单片机外围电路设计 3.报警电路设计 4.显示电路设计 2 系统原理概述 2.1 系统原理总概述 本系统由信号预处理电路、单片机AT89C2051、LCD显示模块、开关按键,报警模块和系统软件组成。其中信号预处理电路包含信号放大、波形变换和波形整形。对待测信号进行放大的目的是降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机相连的TTL信号;通过单片机的设置可使内部定时器T1对脉冲输入引脚T0进行控制,这样能精确地算出加到T0引脚的单位时间内检测到的脉冲数。本设计中,计数的正确性决定了本装置的精度,如何在复杂的环

15、境中得到正确的计数脉冲,是本设计的重点,设计中里程表显示采用LCD1602液晶模块,用液晶显示器显示是本设计的难点。并且在速度高于一定的值时可自动向用户报警,从而达到智能速度里程表。 2.2 系统硬件组成原理 系统硬件由信号预处理电路、单片机AT89C2051、系统化LCD显示模块、开关按键,报警模块组成,系统的硬件组成框图如下: 图2-1 系统总体设计框图 由于不同速度发出不同频率的脉冲,通过光电传感器检测出不同状态的脉冲信号,而一般的模拟信号都是微弱的,所以要把它放大,这就需要一个放大器。另外单片机能识别的都是TTL信号,经波形变换和波形整形电路方能将放大的信号转换成可与单片

16、机相连的形式。当行驶达到一定的车速时,会发出报警声。不同的按键方式,液晶显示器会显示不同的数据。 2.3 软件系统工作流程 在硬件设计完毕之后,接下来就是设计中最核心和最为主要的软件部分设计。所谓软件设计就是把软件需求变换成软件的具体设计方案(即模块结构)的过程。模块化结构设计即是根据要求和硬件设计的结构,将整个系统的功能分成许多小的功能模块,再根据这些小的功能模块进行程序编写的过程。这样的设计方法,使得系统的整个功能和各部分的功能趋于明朗化。当系统出现问题,就可以根据功能设置找出问题的根源,从而更快地解决问题。所以说,在整个设计过程中,软件设计必须与硬件设计紧密地结合在一起。

17、 图2-2 系统软件流程图 3 系统硬件设计 本设计采用的是以红外传感器ST1101为传感器,以AT89C51作为系统的主控芯片,以LCD1602、128*16液晶显示器进行显示。 图3-1 系统硬件框图 3.1 采集信息部分以及传感器的选择 信息采集部分可以选用的传感器种类一很多,例如磁感应传感器,光电感应传感器,金属传感器等。 霍尔传感器由永久磁铁和开关型霍尔集成电路组成。霍尔集成电路由霍尔元件、放大器、整形电路及集电极开路输出等部分组成,其功能是把磁信号转换成电信号,霍尔元件为磁敏元件,当垂直于霍尔元件的磁场强度发生变化时,其两端的电压就会发生变化,经放大和整形即

18、可输出脉冲电信号。  光电编码器的工作原理与光电传感器一样,不过它已将光电传感器、电子电路、码盘等做成一个整体,只要用连轴器将光电传感器的轴与转轴相连,就能获得多种输出信号。它广泛应用于数控机床、回转台、伺服传动、机器人、雷达、军事目标测定等需要检测角度的装置和设备中。如图3-2所示,是某光电编码器的外形。 光电传感器是应用非常广泛的一种器件,各种各样的形式,如透射式、反射式等,基本原理就是当发射管光照射到接收管时,接收管导通,反之关断。以透射式为例,如图3-1所示,当不透光的物体挡住发射与接收之间的间隙时,开关管关断,否则打开。为此可以制作一个遮光叶片如图3-3所示,安装在转轴上,当扇叶

19、经过时,产生脉冲信号。当叶片数较多时,旋转一周可以获得多个脉冲信号。而考虑到实际可操作性以及设计要求方面,本设计选用的传感器为光电传感器。 图3-2 光电传感器的原理图 图3-3 遮光叶片 将光敏电阻安装在自行车前又的一侧,在同等高度的另一侧安上一个高亮度的发光二极管。在同等高度的辐条上贴上一圈黑色材料,并在黑色材料上打上等间距的小孔,这样当小孔经过光敏电阻时,光敏电阻根据光电流的变化发出脉冲, 从而测量里程。 红外光电传感器ST1101采用高输出的红外光电二极管与高灵敏度光敏晶其特点是性能可靠,体积小,结构简单,广泛应用于里程表。 表3-1 主要参数 输入

20、正向电流 IF 50 mA 反向电压 Vr 6 v 耗散功率 P 75 mW 输出 集-射电压 Vceo 25 V 射-集电压 Veco 6 V 集电极功耗 Pc 50 mW ST1101外围电路如图3-4所示,R1、R2均为限流电阻,限制发射二极管的电流,发射二极管的电流大则发射功率大,但不能超过它的极限电流。根据主要参数表,它的极限电流为50mA,当两者之间有孔时,三极管导通,当两者被隔离时,三极管截止。 图3-4 传感器外围电路 3.2 轮脉冲检测与转换电路 本设计采用了ST1101红外光电传感器,进行非接触式检测。当有物

21、体挡在红外光电发光二极管和高灵敏度的光电晶体管之间时,传感器将会输出一个低电平,而当没有物体挡在中间时则输出为高电平,从而形成一个脉冲。然后通过带施密特触发器的反相器DM74LS14 来把放大器生成的单相脉冲转换成与COMS 电平相兼容的方波信号,再输入给单片机。 3.2.1 轮脉冲检测 该系统在自行车后轮的轴处保持着与轮子旋转切面平行的方向延伸附加一个铝盘,在这个铝盘的边沿处挖出若干个圆形过孔,把传感器的检测部分放在圆孔的圆心位置。每当铝盘随着后轮旋转的时候,传感器将向外输出若干个脉冲。 把这些脉冲通过一系列的波形整形成单片机可以识别的TTL电平,即可算出轮子即时的转速。铝盘的圆孔的

22、个数决定了测量的精度,个数越多,精度越高。这样就可以在单位时间内尽可能多地得到脉冲数从而避免了因为两个过孔之间的距离过大,而车子正好在过孔之间或者是在下个过孔之前停止了,造成较大的误差。 本设计在铝盘过孔的设计上采用9个过孔,从而留下了8个同等的间距这样在以后的软件设计中能够较为方便的计算出速度里程。脉冲发生源的硬件结构图如图3-5所示。 图3-5 脉冲发生源硬件结构图(左为正视图,右为侧视图) 3.2.2 信号预处理电路 如图3-6所示,系统的信号预处理电路由二级电路构成,第一级是由开关三极管组成的零偏置放大器,采用开关三极管可以保证放大器具有良好的高频响应。当输入信号为零或负

23、电压时,三极管截止,电路输出高电平;而当输入信号为正电压时,三极管导通,此时输出电压随着输入电压的上升而下降,这使得速度里程表既可以测量任意方波信号的频率,也可以测量正弦波信号的频率。由于放大器的放大功能降低了对待测信号的幅度要求,因此,系统能对任意大于0.5V 的正弦波和脉冲信号进行测量。其中电阻R3为输入电阻,R4为输出电阻。预处理电路的第二级采用带施密特触发器的反相器DM74LS14 来把放大器生成的单相脉冲转换成与COMS 电平相兼容的方波信号(如图3-7所示),同时将输出信号加到单片机的P3.2口上。 利用施密特触发器状态转换过程中的正反馈作用,可以把边沿变化缓慢的周期性信号变换为

24、边沿很陡的矩形脉冲信号。输入的信号只要幅度大于VT+,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。 从传感器得到的矩形脉冲经传输后往往发生波形畸变。当传输线上的电容较大时,波形的上升沿将明显变坏;当传输线较长,而且接受端的阻抗与传输线的阻抗不匹配时,在波形的上升沿和下降沿将产生振荡现象;当其他脉冲信号通过导线间的分布电容或公共电源线叠加到矩形脉冲信号时,信号上将出现附加的噪声。无论出现上述的那一种情况,都可以通过用施密特反相触发器整形而得到比较理想的矩形脉冲波形。只要施密特触发器的VT+ 和VT- 设置得合适,均能受到满意的整形效果。 图3-6信号预处理电路图图 图3-

25、7信号处理波形图 3.3 单片机系统部分 3.3.1 AT89C51单片机介绍 AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 图3-8 AT89C51引脚图

26、 3.3.2 定时/计数器的结构及控制 定时/计数器的实质是加1计数器(16位),由高8位和低8位两个寄存器组成。TMOD是定时/计数器的工作方式寄存器,确定工作方式和功能;TCON是控制寄存器,控制T0、T1的启动和停止及设置溢出标志。定时/计数器结构如图3-9所示: 图3-9 定时/计数器结构图 AT89S52单片机定时/计数器的工作由两个特殊功能寄存器控制。TMOD用于设置其工作方式;TCON用于控制其启动和中断申请[9]。 1.工作方式寄存器TMOD 工作方式寄存器TMOD用于设置定时/计数器的工作方式,低四位用于T0,高四位用于T1。其格式如表3-2:

27、 表3-2 位号 D7 D6 D5 D4 D3 D2 D1 D0 符号 GATE C/T M1 M0 GATE C/T M1 M0 GATE:门控位。 GATE=0时,以运行控制位TRX(X=0,1)来启动定时/计数器运行; GATA=1时,要用软件使TR0或TR1为1,同时外部中断引脚或也为高电平时,才能启动定时/计数器工作; C/T计数器模式和定时器模式选择位 C/T=1时,选择计数器模式,计数器对外部输入引脚T0(P3.4)或T1(P3.5)的外部脉冲计数;C/T=0时,选择定时器模式。 M1M0:工作方式设置位。定时/计数器有

28、四种工作方式,由M1M0进行设置。 表3-3 M1 M0 工作方式 功能 0 0 工作方式0 13位计数器 0 1 工作方式1 16位计数器 1 0 工作方式2 自动再装入8位计数器 1 1 工作方式3 定时器0:分成两个8位计数器 定时器1:停止计数 2.控制寄存器TCON TCON的低4位用于控制外部中断,已在前面介绍。TCON的高4位用于控制定时/计数器的启动和中断申请。其格式如下: 表3-4 位 D7 D6 D5 D4 D3 D2 D1 D0

29、 字节地址:88H TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 TF1(TCON.7): T1溢出中断请求标志位。T1计数溢出时由硬件自动置TF1为1。CPU响应中断后TF1由硬件自动清0。T1工作时,CPU可随时查询TF1的状态。所以,TF1可用作查询测试的标志。TF1也可以用软件置1或清0,同硬件置1或清0的效果一样。 TR1(TCON.6): T1运行控制位。TR1置1时,T1开始工作;TR1置0时,T1停止工作。TR1由软件置1或清0。所以,用软件可控制定时/计数器的启动与停止。 TF0(TCON.5): T0溢出中断请求标志位,其功能

30、与TF1类同。 TR0(TCON.4): T0运行控制位,其功能与TR1类同。 3.3.3 中断控制 CPU对中断系统所有中断以及某个中断源的开放和屏蔽是由中断允许寄存器IE控制的。 表3-5 位 7 6 5 4 3 2 1 0 字节地址:88H EA ES ET1 EX1 ET0 EX0 IE EX0(IE.0),外部中断0允许位; ET0(IE.1),定时/计数器T0中断允许位; EX1(IE.2),外部中断0允许位; ET1(IE.3),定时/计数器T1中断允许位; ES(IE.4),串行口中断允许位; EA (I

31、E.7), CPU中断允许(总允许)位。 3.4 单片机外围电路介绍 3.4.1 复位电路 AT89C51单片机的复位输入引脚RST为AT89C51提供了初始化的手段。有了它可以使程序从指定处开始执行,即从程序存储器中的0000H地址单元开始执行程序。在89C51的时钟电路工作后,只要在RST引脚上出现两个机器周期以上的高电平时,单片机内部则初始复位。只要RST保持高电平,则89C51循环复位。只有当RST由高电平变成低电平以后,89C51才从0000H地址开始执行程序。 复位电路通常采用上电自动复位和按钮复位两种方式。 本系统的复位电路是采用按键复位的电路,如图3-10所示,是

32、常用复位电路之一。单片机复位通过按动按钮产生高电平复位称手动复位。上电时,刚接通电源,电容C相当于瞬间短路,+5V立即加到RESET端,该高电平使89C51全机自动复位,这就是上电复位;若运行过程中需要程序从头执行,只需按动按钮即可。按下按钮,则直接把+5V加到了RESET端从而复位称为手动复位。复位后,P0到P3并行I/O口全为高电平,其它寄存器全部清零 。 图3-10 AT89C51复位电路 按键手动复位有电平方式和脉冲方式两种。其中电平复位是通过RST端经电阻与电源Vcc接通而实现的。时钟频率选用6MHZ时,C取22uF,Rs取200Ω,RK取1KΩ。 3.4.2 晶振电路

33、 晶振电路由晶振和两个负载电容组成。晶振电路部分电路连接如图3-11所示。 图3-11晶振电路 晶振是给单片机提供工作信号脉冲的,这个脉冲就是单片机的工作速度。比如此系统所用的12MHz晶振,单片机工作速度就是每秒12M。在调试时要注意将PC串口波特率设为1200。至于两个电容的大小,它是根据晶振厂家提供的晶振要求选值的,换句话说,晶振的频率就是在它提供负载电容下测得,能最大限度的保证频率值误差。两个电容取值都是相同的,大部分在20-30pF,没有相同电容的情况下,可以用两个相差不大电容代替,但不能相差太大,容易造成谐振不平衡,容易造成停振或者干脆不起振。晶振电路在本系统中是并联方式,

34、连接在AT89c51的XTAL1和XTAL2引脚。 3.5 显示部分 3.5.1 LCD液晶显示器 图3-12 与LED数码管相比,液晶显示器的显示效果相对较好,液晶显示器显示不仅直观,而且界面具有人机交互美观的特点。而且具有低功耗,容易控制,占用CPU资源少这些优点,从而成为一些显示器的首选。 3.5.2 显示接口电路设计 1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显

35、示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”。因为1602识别的是ASCII码,试验可以用ASCII码直接赋值,在单片机编程中还可以用字符型常量或变量赋值,如'A’。 以下是1602的16进制ASCII码表地址: 读的时候,先读左边那列,再读上面那行,如:感叹号!的ASCII为0x21,字母B的ASCII为0x42(前面加0x表示十六进制)。 指令集 1602通过D0~D7的8位数据端传输数据和指令。 显示模式设置: (初始化) 0011 0000 [0x38] 设置16×2显示,5×7点阵,8位数据接口; 显示

36、开关及光标设置: (初始化) 0000 1DCB D显示(1有效)、C光标显示(1有效)、B光标闪烁(1有效) 0000 01NS N=1(读或写一个字符后地址指针加1 &光标加1), N=0(读或写一个字符后地址指针减1 &光标减1), S=1 且 N=1 (当写一个字符后,整屏显示左移) S=0 当写一个字符后,整屏显示不移动 数据指针设置: 数据首地址为80H,所以数据地址为80H+地址码(0-27H,40-67H) 其他设置: 01H(显示清屏,数据指针=0,所有显示=0);02H(显示回车,数据指针=0)。 L

37、CD显示与单片机连接电路图如图3-13; 图3-13液晶原理图 3.6 报警电路 本次报警电路采用蜂鸣器报警,当即时速度超过预定值是蜂鸣器响,指示灯闪烁,提示应该减速。报警电路图如图3-14所示。 图3-14报警电路图 3.7 键盘控制 键盘是实现人机对话的重要工具,用户可用计算机向计算机输入数据和指令,本系统采用独立键盘接口,独立式按键是指直接用I/O口线构成单个的按键电路。每一个独立式按键单独占用一根I/O口线。独立式按键接口电路配置灵活,软件结构简单。但每个按键都需要占用一根I/O口线,适用于按键数量少的键盘。电路中,按键输入低电平有效。按键未按时

38、有上拉电阻保证此时输入为高电平。按键接口电路如图: 图3-15按键接口图 4 软件设计 待测信号经预处理电路后加至单片机的P3.2引脚可为单片机测量信号频率提供有效的输入信号。单片机通过检测P3.2引脚电平来决定是否启动测量频率程序。当该引脚为高电平时,系统处于等待状态,要一直到该引脚出 现低电平时才开始测频率。我们可从硬件的转盘上知道两个过孔之间在圆周上的距离。而这个距离M正好为计算速度和距离起到了基本的数据储备作用。同时可以从TL0寄存器知道在两秒内单片机检测到的N个脉冲。而M×N所得到的正是这两秒内铝盘在圆周上所走得距离S。(此时假设在这个 两秒内车子是匀速前

39、进的),距离S除以2秒的时间,就可以大概的算出这2秒内铝盘的线速度。再根据铝盘与自行车的轮子保持着一样的角速度,得到铝盘的线速度与轮子线速度的关系,从而算出自行车在这2秒的平均速度。至于里程的计算,根据速度计算的相加即可得到目前的总里程数。 通过单片机计算出来的速度和里程的数据,通过LCD1602显示模块显示。当自行车 行驶时,单片机开机经过初始化后读取并且显示出来,这样以来用户可以清楚的知道自己的车子已经运行了多少公里了。系统的软件总流程如下; 基于光电传感器自行车里程表的软件设计包括上电初始化程序、中断子程序、速度调用子程序、里程调用子程序、LCD显示子程序、延时子程序等几大部分。由

40、于要实现很多功能,所以采用模块化设计,下面就其主要部分分别加以分析。 4.1 测量算法概述 速度测量是工控系统中最基本的需求之一,最常用的是用数字脉冲测量某根轴的转速,再根据机械比、直径换算成线速度。脉冲测速最典型的方法有测频率(M法)和测周期(T法)。 M法是测量单位时间内的脉数换算成频率,因存在测量时间内首尾的半个脉冲问题,可能会有2个脉的误差。速度较低时,因测量时间内的脉冲数变少,误差所占的比例会变大,所以M法宜测量高速。如要降低测量的速度下限,可以提高编码器线数或加大测量的单位时间,使用一次采集的脉冲数尽可能多。 T法是测量两个脉冲之间的时间换算成周期,从而得到频率。因存在半

41、个时间单位的问题,可能会有1个时间单位的误差。速度较高时,测得的周期较小,误差所占的比例变大,所以T法宜测量低速。如要增加速度测量的上限,可以减小编码器的脉冲数,或使用更小更精确的计时单位,使一次测量的时间值尽可能大。 设计中综合考虑测速精度和系统反应时间,本设计用测量脉冲频率来计算历程,因而具有较高的测距精度。在计算里程时取了自行车的理想状态。实际中,误差控制在几米之内,相对于整个里程来说不是很大。另外,还应尽量保证其他子模块在编程时的通用性和高效性。 首先我们把槽型光电传感器ST1101放在自行车的转轴上,当自行车启动时,接通电源后,光电二极管发光,通过和不通过转盘孔时,使三极管导通或

42、截止,这种变化将会光电传感器产生脉冲电压。由于转盘共分为8个孔,转盘转动一圈将会改变8次。所以将会产生8个方波,既每输出8个方波代表自行车转动了一周。例如:我们的自行车车轮半径为0.25m时,计算得出车轮的周长为1.5m。由于每一圈光电传感器将输出8个脉冲,当自行车行驶1KM时会转动667次,这样每1千米将会产生5336个脉冲,单片机对这5336个脉冲计数,当达到这个数时单片机将会产生中断。 通过单片机计算出来的速度和里程的数据,通过LCD1602显示模块直观显示。总里程数会自动保存到单片机的数据存储器,当自行车行驶,单片机开机经过初始化后显示出来,这样以来用户可以清楚的知道自己的车子已经运

43、行了多少公里了。而速度的显示则是在计算出速度里程后立刻显示出来,体现实时性。 4.2 中断子程序的设计 定时中断是为满足定时或计数的需要而设置的。在单片机内部有两个定时/计数器,以对其中的计数结构进行计数的方法,来实现定时或计数功能。当结构发生计数溢出时,即表明定时时间或计数值已满,这时就以计数溢出信号作为中断请求,去置位一个溢出标志,作为单片机接受中断请求的标志。这种中断请求是在单片机芯片内部发生的,因此无须在芯片上设置引入端。 定时/计数器控制寄存器TCON是8位寄存器,地址为88H,。其高4位用于定时/计数器中断控制,低4位借给外部中断,用做中断标志和触发方式选择位。本设计采用定

44、时中断,对自行车的里程和速度进行计数。中断子程序流程图如图4-1所示。 图4-1中断子程序流程图 4.3 数据处理子程序的设计 待测信号经预处理电路后加至单片机的P3. 2( INT0) 引脚可为单片机测量信号周期提供有效的输入信号。单片机通过检测P3.2引脚电平来决定是否启动测量周期程序。当该引脚为高电平时,系统处于等待状态,要一直到该引脚出现低电平时才开始测周期。测量时首先将零赋给THO、TL0 两个寄存器以将定时器T0 的运行控制位TR0 置位,同时也将ET0 置位以允许定时器T0 中断。然后再判断P3. 2 引脚是否还为低电平,如为低电平则等待,直到出现高电平再开始判断P3

45、 2 引脚是否为低电平,当其不是低电平时再等待。一旦出现低电平,则立即复位TR0终止定时器,以结束测周期程序。测周期过程中可能会发生定时器T0 的中断,每发生一次中断则将R0 寄存器加一,因此R0 实际上是周期值的高字节。测出的周期值存储在R0、TH0、TL0 三个寄存器中,然后将其转换成速度。速度是用车轮的周长除以脉冲周期得到的。由于所测周期的单位是μs,因此在相除转换时应将被除数扩大10万倍,以保证得出正确的速度。 4.3.1 里程计算子程序 外中断0服务程序用于对单片机P3.2口输入的圈脉冲进行计数,为十六进制计数器。当车轮每转一圈,通过光电传感器将脉冲数输入单片机内,通过计数器

46、计出脉冲数,再用乘法子程序算出里程数。其中阶段里程为本次行驶所走过的里程,总里程为自行车从开始使用当前行驶的总路程,两者处理程序大致相同,总里程为阶段里程 的累加。将阶段里程自动与以前存储的总里程相加,再存入该存储器,当单片机断电后,阶段里程清零,当有重新开始时,单片机重新计数与计时。里程处理子程序流程图如图4-2所示。 图4-2 里程处理子程序流程图 4.3.2 速度计算子程序 内部定时/计数器T0服务程序用于处理轮子转动一圈后的计时数据。定时器计出每转一圈所用的时间,用自行车车轮的周长除以时间就得出自行车的瞬时速度。阶段平均速度为阶段里程除以本次行驶的时间。下为瞬时速度处理子

47、程序流程图: 图4-3速度处理子程序流程图 4.4 显示子程序的设计 液晶显示是本设计的难点,为了让显示的内容更丰富,显示更合理,根据设计要求,里程表需要显示速度、里程、时间等。当接通电源或按Reset后,显示欢迎画面: DigitalBikeMeter   Welcome…. 系统延时2秒后进入时钟设置画面: Set Time 00:00:00 依次按S1-S3调整时钟,S1设定时位,S2设定分位,S3设定秒位,待时间设定完成后按S4确认。 接着进入自行车轮胎半径设置画面:        Set Bike Tire L=

48、 55cm 按S1、S2调整轮胎直径后,按S4确认,里程表开始工作。 各项参数分成四屏选择显示,按动S5(Disp)按流程图所示进行切换。 图4-4 显示流程图 阶段里程是指本次自行车所走过的路程,阶段平均速度为阶段里程与阶段时间的比值,软件编程的主要变量为:阶段行驶里程(m)、阶段时间、瞬时速度(m/s)、最大速度(m/s)、阶段平均速度(m/s)、总里程(km或m)。 5 设计总结 5.1 实现目标与特点 一.实现目标 该课题的主要任务是开发一个以MCS-51单片机为核心的

49、自行车的速度里程表。本设计主要分为硬件部分和软件部分,硬件部分着重考虑硬件电路的简单性,故尽可能简化硬件电路,节省线路板的空间,达到硬件电路最优化设计。软件采用C语言编写,采用模块化设计思想,程序可读性强。通过仿真、实验验证了系统的可行,能满足设计要求,达到设计的指标,实现对自行车里程/速度的计算功能,并用LCD显示,设脉冲总数为m,车轮周长为C,车轮转一周输出脉冲数为n,车轮行驶时转一圈的时间为T0,则里程(S)与速度(v)分别根据以下公式求得: S=m*C/n v=C/T0 根据此公式将最终显示出里程和速度。通过仿真证明本次设计符合设计的要求,能实现对里程、速度的

50、显示,功能性较强,具有一定的实践意义,将会在许多场合应用。但也有一些不足存在,当显示速度时,若自行车转动太快,显示器会显示过快,应该将速度定时显示,使人们能够清楚地看出速度。 (1)实现了总里程的测量,并且里程当里程小于1KM时,数据的显示格式为000.0m,当里程大于1KM时,数据的显示格式为000.00KM,更便于数据的读取与测量。其中里程的值为当前行驶的里程。 (2)实现了速度包括平均速度瞬时速度的测量,并规定最大速度为8m/s,当行驶速度超过该值时,报警器会发出报鸣声,提醒减速行驶。 (3)实现了时钟的定时与当前时间的显示,使设计更合理。 (4)发挥部分 :可以显示最大加速度,

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服