自行车里程表的设计毕业设计论文
- 格式:doc
- 大小:269.50 KB
- 文档页数:28
自行车里程表的设计毕业论文前言 (1)第1章绪论 (2)1.1 课题背景 (2)1.2 设计的主要容及技术指标 (2)第2章自行车里程表总体方案设计 (3)2.1 任务分析与实现 (3)2.2 自行车里程表硬件方案设计 (3)2.3 自行车里程表软件方案设计 (4)第3章自行车里程表硬件模块设计 (5)3.1 里程表的硬件设计 (5)3.1.1 霍尔传感器电路模块设计 (5)3.1.2 按键电路模块设计 (6)3.1.3 电源电路模块设计 (6)3.1.4 时钟电路模块设计 (7)3.1.5 LCD显示模块电路模块设计 (7)3.1.6 串口下载电路模块设计 (8)3.1.7 复位电路模块设计 (9)3.1.8 晶振电路模块设计 (10)第4章软件的设计 (11)4.1 里程表的软件设计 (11)4.1.1 里程速度功能模块实现 (11)4.1.2 日历时钟模块功能 (14)4.1.3 LCD1602液晶显示模块 (17)第5章软件调试 (21)5.1 程序的检测与调试 (21)5.1.1 Keil软件简介 (21)5.1.2 编制单片机应用程序的步骤和难点 (21)5.2 系统仿真调试 (24)5.2.1 程序的查错手段 (25)第6章结论 (27)第7章谢辞 (28)参考文献 (29)附录1 硬件设计原理图 (30)附录2 硬件电路仿真图 (31)附录3 软件程序 (32)译文 (69)C语言 (69)第1章绪论单片机自从推出以来,以其超小型化、结构紧凑、可靠性高、成本低等优点被人们广泛接受,从而应用于工业、电讯、数据处理、仪器仪表等多方面。
自行车里程表是自行车的重要配件,在自行车仪表中占重要位置,但几十年来其发展变化并不大,现在国外很多车中使用了数字里程表,但在国还并不多见。
1.1 课题背景里程表的原理很简单,车轮的圆周长是恒定不变的。
由此可以计算出每走一里路车轮要转多少圈,这个数也是恒定不变的。
编号:201234140123 本科毕业论文基于单片机的自行车里程测速仪设计毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解XX大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:I摘要随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。
自行车测速仪能够满足人们最基本的需求,让人们能清楚地知道当前的速度、里程、时间等物理量。
本文介绍了一种基于单片机控制的简易自动自行车速度以及里程计算系统,包括自行车里程表的硬件构成,软件逻辑以及程序代码。
该里程测速系统以AT89C51作为系统控制核心,采用霍尔传感器来检测信号,通过一定时间间隔内对信号的采集,结合自行车本身车轮参数,经过单片机对采集信号进行分析计算,最终在LCD上显示车辆行驶里程、平均速度和瞬时速度,并且具有超速报警功能。
该系统硬件电路简单,子程序具有通用性,完全符合设计要求。
为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。
正文中首先简单描述系统硬件工作原理,且附以系统硬件设计框图,论述了本次毕业设计所应用的各硬件接口技术和各个接口模块的功能及工作过程, 并具体描述了AT89C51接口的软、硬件调试;其次阐述了程序的流程和实现过程。
本科毕业论文题目:简易自行车数字里程表设计摘要本文对自行车里程表的结构、设计原理进行了介绍,并应用芯片LM339和AT89S51设计、制作了自行车里程表。
文章介绍了所用芯片的存储结构、各管脚的功能,对各个模块的工作原理进行了分析。
并对自行车里程表进行了展望。
本文先对里程表设计当中所需设备作了详细介绍,对设计中存在的问题进行了说明;而后对硬件和软件部分的设计和实现作了认真的分析;然后给出了系统的建模过程及相应的系统模型,在此基础上进行了控制仿真,并对仿真效果进行了比较。
本里程表的设计具有结构简单,成本低廉,显示清晰,稳定可靠等优点。
并且可进行扩充,加入时速表的功能,更加方便的了解你现在所处的情况。
【关键词】光电对管;单片机AT89S51 ;LM339;键盘;AbstractIn this paper, the structure and principle of traditional bicycle odometer are introduced, and applying LM339 and ATS89S51 has designed and made a bicycle odometer .The article has introduced what be memory structure of used chip , every function of pin ,and has carried out analysis on operating principle of each modules, and has been in progress to design of bicycle odometer to look into the distance.This article first right Odometer designs required equipment, details of the design issues of; Later on hardware and software design and implementation carefully analyzed; Then the system modeling process and the corresponding model, based on the control simulation, Simulation results also were compared.Odometer the design of the structure is simple, low cost, showing clear, stable and reliable results. And can be expanded to speed the function table and more convenient understand you are now stand.Keywords:photoelectric cell; AT89S51;LM339; keys;摘要IABSTRACT I1绪论11.1.课题的背景与意义11.2课题所要解决的主要问题12系统设计22.1.系统功能分析22.2.系统功能模块设计22.2.1硬件电路设计22.2.2软件设计83程序代码103.1.数据采集程序103.2键盘扫描程序103.3.中断程序114系统调试与结果分析124.1.电路调试124.1.1硬件调试124.1.2软件调试124.2.结果分析135总结与展望13致谢14参考文献14附录1程序原代码15附录2系统电路图21附录3系统实拍图错误!未定义书签。
简易自行车里程表设计朱鸿志摘要:随着现代社会对绿色出行的提倡及全民养生健身意识的觉醒,自行车逐渐成为我们生活中首选的中短途代步工具。
对于那些喜爱骑行健身的人来说,自行车车载速度里程表显得尤为重要。
而老式的传统里程表由于是机械构造,长期使用磨损严重,容易造成极大的误差。
因此,电子里程表便应运而生,成了自行车最好的车载伴侣。
在这样一个大背景下,本次课设我设计的电子里程表采用光电传感器,LCD1602液晶显示器,AT89C51,通过按键达成输入车轮周长,存储里程,显示速率等基本用途。
Abstract:With the promotion of green travel in modern society and the awakening of the consciousness of national health and fitness, bicycles have gradually become the preferred medium and short-distance transportation tools in our lives. For those who like to ride fitness, bicycle speedometer is particularly important. The old-fashioned traditional odometer belongs to mechanical structure and has been worn for a long time, so it is easy to cause great errors. Therefore,the electronic odometer came into being and became the best companion for bicycles. Under such a large background, the electronic odometer the author designed uses photoelectric sensors, LCD1602 liquid crystal display andAT89C51, and achieves the basic purposes of inputting wheel circumference,storing mileage and displaying speed through buttons.關键词:光电传感器;LCD1602液晶显示器;AT89C511 设计原理与设计要求1.1 设计原理本次课设使用51单片机完成简易自行车里程表的设计要求,使用对射光电传感器,LCD1602液晶显示器及51单片机,实现对自行车速度和里程的实时显示并保存里程。
电子信息毕业论文 - 自行车里程表的设计学号:毕业设计(论文)题目:自行车里程表的设计作者届别 2021系别物理与电子信息系专业电子信息工程指导老师完成时间职称讲师摘要本文介绍的速度与里程表设计以单片机最小系统和霍尔传感器为核心。
传感器将不同车速转变成的不同频率的脉冲信号输入到单片机进行控制与计算,再采用LED模块进行显示,使得电动自行车的速度与里程数据能直观的显示给使用者。
本系统由霍尔传感器、RC滤波电路、单片机AT89S51、系统化LED显示模块、数据存储电路和键盘控制组成。
其中霍尔传感器包含信号放大和波形整形。
对待测信号进行放大的目的是降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机相连的TTL信号;通过单片机的设置可使内部定时器T1对脉冲输入引脚T0进行控制,这样能精确地算出加到T0引脚的单位时间内检测到的脉冲数;设计中速度显示采用LED模块,通过速度换算得来的里程数采用I2C总线并通过E2PROM来存储,既节省了所需单片机的口线和外围器件,同时也简化了显示部分的软件编程本文先对里程表设计当中所需设备作了详细介绍,对设计中存在的问题进行了说明;而后对硬件和软件部分的设计和实现作了认真的分析;然后给出了系统的建模过程及相应的系统模型,在此基础上进行了控制仿真,并对仿真效果进行了比较。
本里程表的设计具有结构简单,成本低廉,显示清晰,稳定可靠等优点。
并且可进行扩充,加入时速表的功能,更加方便的了解你现在所处的情况。
关键词:单片机最小系统,LED数码管,霍尔传感器,RC滤波器,EEPROM存储器。
1AbstractThis paper describes the design speed and Odometer to SCM system and the smallest Hall sensor at the core. Different speed sensor into different frequency pulse signal input to the microprocessor control and calculation adopt LED modules, making the speed of electric bicycles and mileage data can be directly displayed to the user.The system consists of Hall sensor, RC filter circuit, SCM AT89S51, systematic LED display modules, data storage and keyboard control circuit components. Hall sensor which contains signal amplification and waveform shaping. Deal signals measured amplification of the treatment is to reduce the rate of measured signals; Waveform transform and waveform shaping circuit will be used for amplification of the signal can be converted into SCM connected with TTL signals; SCM through the setup will enable the internal timer T1 pulse input pin T0 control, This can be accurately calculated foisted T0 pinunit time detection of the pulse; Design LED display modules, through a conversion rate of mileage using I2C bus through E2PROM to storage, saved for SCM mouth lines and external devices, but also simplify the show part of the software programThis article first right Odometer designs required equipment, details ofthe design issues of; Later on hardware and software design and implementation carefully analyzed; Then the system modeling process and the corresponding model, based on the control simulation, Simulation results also were compared.Odometer the design of the structure is simple, low cost, showing clear, stable and reliable results. And can be expanded to speed the function table and more convenient understand you are now stand.Keywords : SCM minimum system, LED digital control, Hall sensor, RC filter, EEPROM memory.2目录第一章绪论 ........................................................................... .. (4)1.1 课题背景、发展及意义............................................................................ .................. 4 1.2 系统设计概述............................................................................ ................................ 4 1.3 各章节的安排 ........................................................................... .................................. 4 第二章自行车里程表的设计方法与基本原理 (6)2.1 霍尔传感器 ........................................................................... ...................................... 6 2.2 单片机最小系统 ........................................................................... ............................. 6 2.3 频率测量.................................... 8 2.4 LED数码管 ........................................................................... .................................... 9 2.5存储器EEPROM........................................................................ ..................................... 9 2.6 键盘控制............................................................................ ...................................... 10 2.7 RC滤波器 ........................................................................... .....................................11 第三章硬件实现的设计方法与原理 (12)3.1 系统概述............................................................................ .. (12)3.2 系统总框图 ........................................................................... ................................... 13 3.3 各部分硬件图 ........................................................................... . (13)3.3.1 显示部分............................................................................ ........................ 13 第四章自行车里程表软件实现方法 (15)4.1 软件编程实现............................................................................ . (15)4.1.1 系统软件框图............................................................................ ................. 15 4.1.2 数据处理............................................................................ ........................ 15 4.1.3 键盘控制............................................................................ ........................ 16 4.2部分程序 ........................................................................... ....................................... 17 第五章仿真与测 (36)5.1 画好的PCB板图 ........................................................................... .......................... 36 5.2 设计好的里程表图 ........................................................................... ....................... 36 第六章总结............................................................................ ..................................... 37 参考文献............................................................................ ............................................ 38 致谢 ........................................................................... .. (39)3第一章绪论1.1 课题背景、发展及意义我国是自行车大国,随着人们生活水平的不断提高,自行车已经不仅仅是运输、代步的工具,其辅助功能也变得越来越重要。
自行车里程碑一,摘要:自行车的技术性能随着行驶里程的增加以及各种因素的影响而发生变化。
在使用自行车的过程中,控制车辆速度,可以减少隐患,并防止故障的发生提高车辆的完好率,有效地延长自行车的使用寿命。
因此,骑车中应时常关注里程表显示的数字,一旦超过一定速度,应及时减速,防止事故的发生。
针对机械式里程表的缺点,开发研制了数字式自行车里程表。
该里程表系统主要由CD4040和CD40110为核心、光电传感器调理,并由LED显示器显示出来的速度里程表设计方案。
该方案由于使用了CD4040和CD4011等比较低级芯片,因而可在节约系统资源和简化程序设计的基础上保证测量精度和系统实时性。
关键词:里程表;光电传感器;芯片;LED显示器二,概论:这自行车里程表设计的实现方式是,通过安装在自行车转轴上的测量盘,用光电式转速传感器检测转速的脉冲信息,在脉冲状态下,将转速的变化转换成光通量的变化,再通过光电转换元件将光通量的变化转换成电量的变化,接着通过频率测量电路将脉冲信号依次传入到各个芯片中,然后依据电量与转速的函数关系实现转速测量,再通过计算,从而得出里程的信息,并由LED显示器显示出来。
这设计要求是两个数码显示,单位百米,直径在0.99cm,即在设计电路中应采取32进制计数。
电源应该有稳定的9V输出。
三,方案流程图:电源电路图220v的交流电经过变压器降压至9v交流电,通过桥式整流后,波形都变为正的。
再经滤波,LM7809的整流,再滤波,最后得到稳定的电压+9 v。
轮胎转速检测电路图由红外线发射端到红外线接收端中间有测量牌进行格挡,产生脉冲,经过芯片LM358进行扩大信号。
CD4040-----12位二进制串行计数器简要说明:CD4040 是12 位二进制串行计数器。
所有的计数器为主从触发器。
计数器在时钟下降沿进行计数。
CR 为高电平时,对计数器进行清零。
由于在时钟输入端使用斯密特触发器,对脉冲上升和下降时间无限制,所有输入和输出均经过缓冲。
重庆三峡学院毕业设计(论文)题目基于单片机的自行车里程表及速度仪的设计院系专业电子信息工程年级 2 0 1 0 级学生姓名学生学号指导教师职称副教授完成毕业设计(论文)时间 2013 年 12 月目录第一章绪论 (1)1.1选题背景与研发意义 (1)1.2课题的发展情况 (1)1.3 研究的主要内容 (2)第二章开发工具介绍 (2)2.1 KEIL介绍 (2)2.2 Proteus介绍 (3)2.3 单片机 (4)第三章硬件电路的设计 (7)3.1 相关元器件及其简介 (7)3.1.1 AT89C51单片机简介 (7)3.1.2 LCD液晶显示模块 (7)3.1.3传感器的选择 (8)3.1.4霍尔传感器 (9)3.2 总体设计方案 (10)3.2.1 系统总体设计思路 (10)3.2.2 方案设计与讨论 (10)3.3 模块电路 (11)第四章系统的软件设计 (12)4.1系统的主流程图 (12)4.2仿真截图 (13)结论 (16)致谢 (16)参考文献 (17)英文摘要 (18)附录 (19)基于单片机的自行车里程表及速度仪的设计摘要本文介绍了基于单片机控制的简易自动自行车里程以及速度的计算系统,包括自行车里程表的硬件构成、软件逻辑以及程序代码。
该自行车测速系统以AT89C51作为系统控制核心,采用霍尔传感器来检测信号,通过一定时间间隔内对信号的采集,结合自行车本身车轮参数,经过单片机对采集信号进行分析计算,最终在LCD以及LED上显示车辆行驶里程、平均速度和瞬时速度,并且具有超速报警功能。
关键字:自行车测速单片机霍尔传感器 LCD显示 LED显示第一章绪论1.1选题背景与研发意义中国人口众多,还是发展中国家,经济不发达制约了大多数人的消费水平,人们休闲时使用的交通工具主要还是自行车,它便捷轻巧,使用简单,深受人们的喜爱,作为休闲运动工具,是人们锻炼身体的好工具,好伙伴。
但随着时间的推移,人们追求的是具有更多功能的自行车它能显示当前车子行驶的速度,里程,行驶时间,最高行驶速度,甚至还有GPS定位系统。
毕业设计(论文)题目:自行车里程速度计设计学院:电子信息学院专业班级:自动化2011级4班指导教师:王敏职称:讲师学生姓名:***学号:***********摘要随着自行车行业和电子技术的发展,自行车速度里程计技术也在不断进步和提高,不仅可以显示速度里程,还可以显示热量消耗、心跳等参数,在大家注重环境保护和运动健康的今天,速度里程计不仅可以使运动者运动适量,还可以达到健康运动和代步的最佳效果,因此设计了以单片机为基础的自行车速度里程计,让人们能清楚地知道当前的速度、里程等物理量,而且单片机体积小、可靠性高、价格便宜。
该设计重点阐述了系统的工作原理、硬件构成、各部分的主要功能以及软件的结构和实现。
硬件包括主控模块、数据采集模块、数据处理模块、显示模块等组成,采用STC89C52单片机为主要控制芯片,运用自行车车轮上的传感器进行计数,通过一定时间间隔对信号的采集,结合自行车本身车轮参数,送入单片机并由单片机对采集信号进行分析计算,最终在液晶显示器LCD上显示车辆行驶的里程和速度;软件部分用C语言编程,采用模块化设计思想,并在keil和proteus 中进行调试和仿真。
自行车里程速度计的设计本着安全、方便、性价比高、人性化的原则进行,可使现代生活显著提高。
关键词:单片机,LCD1602,霍尔传感器,里程计ABSTRACTAs the bicycle industry and the development of electronic technology, bicycle speed odometer technology is also in constant progress and improve, not only can display speed range, can also display parameters such as heat consumption, heart rate, in everybody pays attention to environmental protection and health/fitness today, speed odometer can not only make people exercise right amount motion, also can to achieve the desired effect of the health sports and walking, thus designed on the basis of the single chip microcomputer bike speed odometer, let people can clearly know the current speed, mileage and other physical quantities, in addition, SCM has small size, high reliability and cheaper price.The design expounds the working principle, hardware composition, main functions of each part and the software structure and implementation. Hardware includes main control module, data acquisition module, data processing module, display module and so on, Using the STC89C52 single-chip microcomputer as main control chip, using sensors on bicycle wheels to count, sending the signals collected by a certain time interval and the bike itself parameters to the single chip microcompute. Finally Using single chip microcomputer to collect signal analysis and display.Software part in C language programming Adopting the idea of modular design, and debugging and simulation in the keil and proteus. Bicycle mileage speedometer design in line with safe, convenient and cost-effective, humanized principle, can make modern life improved significantly.KEYWORDS:singlechip, LCD1602, Hall sensor, odometer西安工程大学毕业设计论文目录第1章绪论 (1)1.1 课题背景 (1)1.2 系统要求 (1)1.3 课题实现方法 (2)第2章系统框图及方案介绍 (3)2.1 总体方案比较 (3)2.2 总体方案选择 (3)2.2.1 系统总体框图 (3)2.2.2 系统总体设计 (3)2.3 各模块设计与选择 (4)2.3.1 单片机的选择 (4)2.3.2 显示模块的选择 (5)2.3.3 传感器的选择 (5)2.3.4 时钟芯片的选择 (6)2.3.5 按键模块的选择 (6)第3章硬件设计 (7)3.1 单片机最小系统 (7)3.1.1 最小系统接线图 (7)3.1.2 时钟电路 (7)3.1.3 复位电路 (8)3.2 显示模块 (8)3.2.1 液晶显示电路 (8)3.2.2 显示器LCD1602的介绍 (9)3.3 传感器模块 (11)3.3.1 霍尔传感器工作原理 (11)3.3.2 霍尔传感器的特性 (12)3.3.3 测速方法 (13)西安工程大学毕业设计(论文)3.4 时钟模块 (13)3.4.1 时钟电路 (13)3.4.2 时钟芯片介绍 (14)3.4.3 DS1302的工作原理 (14)3.4.4 DS1302的控制字节 (14)3.4.5 数据输入输出(I/O) (15)3.5 按键模块 (15)3.6 系统总设计图 (15)第4章系统软件设计与实现 (17)4.1 C语言介绍 (17)4.2 软件实现的功能 (18)4.3 主流程图 (18)4.5 显示子程序设计 (19)4.6 速度、里程处理流程设计 (20)4.6.1 处理流程图 (20)4.6.2 算法流程 (21)4.7 按键处理流程设计 (22)第5章系统调试与仿真 (23)5.1 软件调试 (23)5.1.1 Keil简介 (23)5.1.2 程序调试 (23)5.1.3调试中的问题 (23)5.2 硬件仿真 (24)5.2.1 Proteus简介 (24)5.2.2 Proteus与Keil联调 (25)5.2.3硬件仿真中的问题 (26)5.3实物实现 (27)第6章总结 (29)参考文献 (31)西安工程大学毕业设计论文附录.....................................................................................错误!未定义书签。
前言前言自行车,又称脚踏车或单车,通常是二轮的小型陆上车辆。
人骑上车后,以脚踩踏板为动力,是绿色环保的是绿色环保的交通工具交通工具。
由于各国生活水平的差异,使用自行车的目的各不相同,有些国家的骑行者以旅游、锻炼身体以及少年儿童体育运动为主要目的,自行车是克服心脏功能毛病的最佳工具之一。
随着人们生活水平的逐渐提高,人们对于生活质量的要求也日益增加,尤其是对健身的要求。
自行车在中国普遍作为代步工具。
而在国外,自行车却是一项十分受欢迎的健身运动。
因为它无污染,价位低廉,老少皆宜。
而且在运动过程中可以充分享受到大自然,对于忙碌的现代人来说,无疑是一种较好的放松方法。
在中国这种情况也在慢慢发生变化。
因此爱好自行车运动的人十分学要一款能测速的装置,以知道自己的运动情况。
并根据外界条件,如温度,风速等进行适当的调节,已达到最佳运动的效果。
件,如温度,风速等进行适当的调节,已达到最佳运动的效果。
而对于自行车运动员来说,最为关心的莫过于一段时间内的训练效果。
因为教练要根据一段时间内运动员的训练效果进行评估,从而进行适当的调整已使运动员达到最佳的状态。
因此需要一种装置进行对训练中各种参数的测定记录。
本作品就是针对此而设计的。
作品就是针对此而设计的。
摘要摘要自行车里程速度表作为自行车的一大辅助工具也正是随着这个要求而迅速发展的,发展的,其功能也逐渐从单一的里程显示发展到速度、其功能也逐渐从单一的里程显示发展到速度、其功能也逐渐从单一的里程显示发展到速度、时间显示,时间显示,时间显示,甚至有的还具甚至有的还具有测量骑车人的心跳、显示骑车人热量消耗等功能。
自行车的速度里程表能够满足人们最基本的需求,足人们最基本的需求,让人们能清楚地知道当前的速度、让人们能清楚地知道当前的速度、让人们能清楚地知道当前的速度、里程等物理量。
里程等物理量。
里程等物理量。
本论文本论文主要阐述一种基于霍尔元件的自行车的速度里程表的设计。
以主要阐述一种基于霍尔元件的自行车的速度里程表的设计。
课程单片机原理及应用课程设计题目自行车里程表的设计主要内容、基本要求、主要参考资料等1、主要内容:根据单片机课程所学内容,结合其他相关课程知识,设计一个自行车里程表,以加深对单片机知识的理解,锻炼实践动手能力,为以后的毕业设计和工作打下坚实基础。
2、基本要求:以AT89C2051型单片机为核心,实时测量并显示自行车行驶过程中两项运动参数:速度和里程。
所测量各值可单独显示,测量值误差小于1%。
超速行驶(设置两各可选择的限速参数:10m/s,8m/s)时,能自动发出声光报警。
3、主要参考资料:[1] 张毅坤,陈善久.单片微型计算机原理及应用.西安:西安电子科技大学出版社,2002.[2] 张友德,赵志英,徐时亮.单片微机原理应用与实验.上海:复旦大学出版社,2000.[3] 伟福Lab2000P系列单片机仿真实验系统说明书.完成期限2010.3.15-2010.3.19指导教师专业负责人2010年3 月13日目录第一章概述 (2)第二章硬件设计 (3)2.1系统组成结构框图 (3)2.2具体硬件电路及工作原理 (3)2.3 AT89C2051单片机简介 (4)2.3.1芯片概述 (4)2.4其他外围硬件电路 (6)2.4.1电源电路 (6)2.4.2霍尔传感器 (6)2.4.3 4位串行静态显示电路 (7)第三章软件设计 (8)3.1主程序设计 (8)3.2 外中断0和 T1定时溢出中断服务子程序设计 (8)3.3 速度/里程显示控制子程序设计 (8)3.4系统完整源程序 (9)总结 (10)参考文献 (11)附录 (12)附录1 整体电路图 (12)附录2 源程序 (13)第一章概述本设计介绍的速度与里程表设计以单片机和光电传感器为核心。
传感器将不同车速转变成的不同频率的脉冲信号输入到单片机进行控制与计算,再采用LED 模块进行显示,使得电动自行车的速度与里程数据能直接的显示给使用者。
该设计能实时地将所测的速度与累计里程数显示出来,主要是将传感器输入到单片机的脉冲信号的频率(传感器将不同车速转变成不同频率的脉冲信号)实时地测量出来,考虑到信号的衰减、干扰等影响,在信号送入单片机前应对其进行放大整形,然后通过单片机计算出速度和里程,再将所得的数据存储到串口数据存储器,并由LED显示模块交替显示所测速度与里程。
本设计的里程数的算法是一种大概的算法(假设在一定时间内自行车是匀速行进,平均速度与时间的乘积即为里程数)。
本系统由信号预处理电路、单片机AT89C2051、系统化LED显示模块、串口数据存储电路和系统软件组成。
其中信号预处理电路包含信号放大、波形变换和波形整形。
对待测信号进行放大的目的是降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机相连的TTL信号;通过单片机的设置可使内部定时器T1对脉冲输入引脚T0进行控制,这样能精确地算出加到T0引脚的单位时间内检测到的脉冲数;设计中速度显示采用LED模块,通过速度换算得来的里程数采用I2C总线并通过E2PROM来存储,既节省了所需单片机的口线和外围器件,同时也简化了显示部分的软件编程。
设计时,应综合考虑测速精度和系统反应时间。
本设计用测量脉冲频率来计算速度,因而具有较高的测速精度。
在计算里程时取了自行车的理想状态。
实际中,误差控制在几米之内,相对于整个里程来说不是很大。
为了保证系统的实时性,系统的速度转换模块和显示数据转BCD码模块都采用快速算法。
另外,还应尽量保证其他子模块在编程时的通用性和高效性。
本设计的速度和里程值采用6位显示,并包含两个小数位。
第二章硬件设计2.1系统组成结构框图根据功能要求,首先要进行的是总体方案的设计于论证,构思一个符合实际要求的系统,如图2.1所示。
系统由测量模块、功能选择模块、显示模块、供电模块和单片机小系统构成。
功能选择后启动测量,大片及实时采集、处理后显示。
图2.1 系统组成结构框图2.2具体硬件电路及工作原理具体硬件电路如图2.2所示。
太慢;P1.6输出低电平时,控制灯D4亮,表示此时的显示值时里程(否则为速度);P1.7控制超速报警电路,其为高电平表示行驶速度正常,为低电平时,三极管9012导通,驱动蜂鸣器报警。
2.3 AT89C2051单片机简介2.3.1芯片概述AT89C2051是一个低电压,高性能CMOS 8位单片机,片内含2k bytes的可反复擦写的只读Flash程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强大AT89C2051单片机可为您提供许多高性价比的应用场合。
AT89C2051是一个功能强大的单片机,但它只有20个引脚,15个双向输入/输出(I/O)端口,其中P1是一个完整的8位双向I/O口,两个外中断口,两个16位可编程定时计数器,两个全双向串行通信口,一个模拟比较放大器。
同时AT89C2051的时钟频率可以为零,即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口,系统唤醒后即进入继续工作状态。
省电模式中,片内RAM将被冻结,时钟停止振荡,所有功能停止工作,直至系统被硬件复位方可继续运行。
管角配置图2.3所示。
图2.3 2051引脚图主要功能介绍(1)兼容MCS51指令系统(2) 15个双向I/O口(3)两个16位可编程定时/计数器(4)时钟频率0-24MHz(5)两个外部中断源(6)可直接驱动LED(7)低功耗睡眠功能(8)可编程UARL通道(9) 2k可反复擦写(>1000次)Flash ROM(10)6个中断源(11)2.7-6.V的宽工作电压范围(12)128x8bit内部RAM(13)两个串行中断(14)两级加密位(15)内置一个模拟比较放大器电池组经7805稳压后得到+5V电压给单片机系统和霍尔传感器供电。
2.4.2霍尔传感器霍尔传感器是利用霍尔效应把磁输入信号转换成电信号的器件。
本系统采用JK8002D霍尔接近开关,他是一种非接触型无触点开关,系统通过它探测外部的磁场的强弱变化,继而控制开关输出。
磁场由外部的磁钢产生。
JK8002D霍尔接近开关的内部原理图和输入/输出特性如图(5)和图(6)所示。
JK8002D霍尔接近开关的输入量是磁感应强度B,当B值达到一定的程度(如Bl)时,霍尔开关内部的触发器翻转,其输出电平状态也随之翻转。
当探头与磁钢距离由远而近为8mm时,霍尔元件输出端输出一个无抖动的低电平(约为0.2V),当两者距离足够远时,霍尔元件输出端输出一个无抖动的I/O 74LS164在节第三章软件设计3.1主程序设计主程序流程图见图3.1。
开机后系统自检,正常时LED显示“——”,同时等待自行车行驶。
轮子开始转圈后,系统进行记录和计算,并根据速度/里程开关的选择显示数值。
图3.1 主程序流程图3.2 外中断0和 T1定时溢出中断服务子程序设计外中断0服务子程序用于对输入脉冲的个数即轮子转圈的次数计数。
每计数一次,系统保存圈数值的同时保存定时器的计时值,并根据功能开关键实时显示相应的值。
T1定时溢出中断服务子程序用于实时统计记一次数的经历时间。
T1定时的基准时间设为20ms,假设记一次数中T1中断的次数为C,1.8/(20C)ms即当前自行车行驶的速度。
用内部定时加外中断的方法实现了对输入脉冲信号的测量,这是本系统最关键的程序部分。
3.3 速度/里程显示控制子程序设计最大允许速度由限速切换开关S4控制,超速使单片机的P1.7输出低电平报警。
若行驶速度太慢(<0.5m/s),灯D3不断闪烁,LED交替显示“Erro”、“Sudu”和当前速度值,以引起骑车者的注意。
速度显示值的单位有km/h和每m/s,由功能键S5切换。
对于里程值,为了较精确地显示,程序设置了不同里程范围时所显示的小数点后数字的位数:里程为10m~99m,显示2位小数;里程为100m~999m,显示1位小数。
3.4系统完整源程序如附录1总结本设计以AT89C2051为核心,通过光电传感器来检测自行车的运转情况进而实现电动自行车的速度,里程的计算及里程的累计,存储,最后用6位的LED 能直观的将速度与里程显示给用户,并且在速度高于一定的值时可自动向用户报警,从而达到智能速度里程表。
这次课程设计使我掌握了很多实践知识,在老师和同学的帮助下对单片机有了进一步的了解。
通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,进而提高自己的实际动手能力和独立思考的能力。
整个设计过程可以说不是很顺利,因为有很多知识已经淡忘,还有很多新的东西没有掌握,所以这次设计在不断的复习、学习中度过,使我受益匪浅,也使我对单片机的运用有了进一步的了解和掌握,也为今后的学习生活和工作打下良好的基础。
参考文献[1] 张毅坤,陈善久.单片微型计算机原理及应用.西安:西安电子科技大学出版社,2002.[2] 张友德,赵志英,徐时亮.单片微机原理应用与实验.上海:复旦大学出版社,2000.[3] 伟福Lab2000P系列单片机仿真实验系统说明书.附录附录1 整体电路图附录2 源程序自行车里程表/* 各引脚用途及系统功能说明P1.0 速度和里程切换:1显示速度,0显示里程P1.1 限速度切换:1 10m/s;0 8m/sP1.2 km/h和 m/s的切换:P1.4 指示显示器单位为km/hP1.5 速度太慢灯闪烁警告P1.6 0时灯亮,指示里程;为以灯不亮,显示速度P1.7 超速度报警距离最大值为9999m6H圈、 38H圈、 22C圈、 15B6圈0m=<S<10m 10m=<S<100m 100m=<S<1000m 1000m=<S<10000m周长0707H 00B4H 0012H 0012H/0AH//变量定义//XIAOSHU EDU 57H ;小数点位数单元GEWEI EDU 40H ;显示单元SHIWEI EDU 41H ;BAIWEI EDU 42H ;QIANWEI EDU 43H ;QSHU1 EDU 43H ;QSHU0 EDU 61H ;自行车圈数存储单元高位QSHU0 EDU 62H ;自行车圈数存储单元低位SJIAN0 EDU 6CH ; T1定时溢出存储单元高位SJIAN1 EDU 6DH ; T1定时溢出存储单元低位//主程序//ORG 000HAJMP STARTORG 0003HAJMP INTEX0ORG 001BHAJMP IT11ORG 0030HSTART: MOV SP,#75H ;设置堆栈指针MOV SCON,#00H ;串行口工作方式MOV GEWEI,#0AH ;开机显示MOV SHIWEI,#0AHMOV BAIWEI,#0AHMOV QIANWEI,#0AHACALL DIS11SETB P3.2 ;外中断0为输入查询方式JB P3.2 ;等待第一个有效脉冲(下降沿)到来ACALL CLEARRAM ;调用系统准备显示初始化子程序STLOOP: JNB P1.0,ST1 ; p1.0=0,显示速度ACALL DISPLAYS ; P1.0=1, 显示里程SJMP STLOOP ;循环显示ST1: ACALL DISPLAYV ;第一个下降沿来后显示速度AJMP STLOOP ;循环显示//系统准备显示初始化子程序//CLEARRAM: MOV TMOD,#10H ; T1用于定时,工作于模式1 MOV TH1,#0B1H ;定时20ms初始值SETB P1.2 ; P1.2-P1.0为输入SETB P1.1SERB P1.0CLR A ;相应内RAM空间清零MOV 21H,A ;速度/里程的BCD码高位清0MOV 22H,A ;速度/里程的BCD码低位清0MOV QSHU1,A ;圈数空间清0MOV QSHU0,AMOV 6AH,A ; T1溢出次数暂存单元高位清0 MOV 6BH,A ; T1溢出次数暂存单元低位清0 MOV SJIAN0,A ;计数器空间清零MOV SJIAN1,AMOV XIAOSHU,#01H ;默认显示3位小数SETB IT0 ;设置外中断为边沿触发方式SETB PT1 ; T1优先级最高SETB EA ;开总中断SETB ET1 ;开T1中断SETB EX0 ;开外0中断//外中断0服务子程序//INTEX0: PUSH ACC ;累加器堆栈保护PUSH PSW ;状态字堆栈保护INC QSHU0 ;圈加1SETB P1.7 ;置1不报警CLR A ;清ACJNE A,QSHU0,SUBX0 ;计数没溢出转SUBX0INC QSHU1 ;溢出进位(61H加1)SUBX0: CLR TR1 ;关计时,读轮子转一圈的时间 MOV 6AH,SJIAN0 ;时间暂存MOV 6BH,SJIAN1MOV TH1,#0B1H ;定时器T1重付初值MOV TL1,#0DFHCLR AMOV SJIAN0,A ;清计时空间MOV SJIAN1,ASETB TR1 ;重新计时POP PSW ;状态字恢复POP ACC ;累加器恢复RETI ;中断返回//T1定时器溢出时中断服务子程序//IT11: PUSH ACC ;堆栈保护PUSH PSWINC SJIAN1 ;定时20毫秒溢出次数MOV A,SJIAN1 ;读一圈定时的次数CJNE A,#0BBH,SUBT1 ;速度太慢(<0.5),处理AJMP SUBT2SUBT1: JC SUBT2INC 69H ;(69H)为奇数,LED显示“Erro” MOV A,69H ;再显示具体速度的值JB ACC.0 ERRO ;(69H)为偶数,LED显示“Sudu” MOV GEWEI,#05H ;再显示具体速度的值MOV SHIWEI,#0BHMOV BAIWEI,#0DHMOV QIANWEI,#0BHMOV XIAOSHU,#0BHACALL DIS11SJMP FS12ERRO: MOV GEWEI,#0CHMOV SHIWEI,#OBHMOV BAIWEI,#0BHMOV QIANWEI,#0DHACALL DIS21;“Erro”或“sudu”和具体速度大值交替闪烁显示FS12: MOV R2,#01H ;CLR P1.5ACALL DELAY2SETB P1.5ACALL DELAY2DJNZ R2,FLASHSUBT2: MOV TH1,#0B1HMOV TL1,#0DFHSETB TR1POP PSWPOP ACCRETI//里程显示控制子程序//DISPLAYS:CLR P1.6ACALL JULIMOV A,QSHU1CJNE A,#02H,DIAOYONG AJMP PANDY DIAOYONG:JNC PANDY1AJMP BUDYPANDY: MOV A,QSHU0CJNE A,#2CH,PANDY2 AJMP PANDY1PANDY2: JC BUDYPANDY1: MOV R6,#00hMOV R7,#0AHACALL JULI2ACALL BCDCACALL FENKAIACALL DIS21ACALL DELAY1RETBUDY: MOV R6,#00hMOV R7,#01hACALL JULI2ACALL BCDCACALL FENKAIACALL DIS11ACALL DELAY1ACALL DELAY1RET//速度显示控制子程序// DISPLAYV:SETB P1.6ACALL SUDUACALL BCDCACALL FENKAIMOV XIAOSHU,#01HRET//处理子程序1//JULI: PUSH PSWPUSH ACCMOV R2,QSHU1MOV R3,QSHU0JNZ GAOMOV A,QSHU0CJNE A,#06H,PAN1AJMP PAN2PAN1: JNC PAN2PAN2: MOV A,QSHU0CJNE A,#38H,PAN3 AJMP GAOPAN3: JC CZB4GAO: AJMP CZ12CZ707: MOV R6,#07HMOV R7,#07HMOV XIAOSHU,#01H AJMP KAISHICZB4: MOV R6,#00HMOV R7,#0B4HMOV XIAOSHU,#02H AJMP KAISHICZ12: MOV R6,#00HMOV R7,#00HMOV XIAOSHU,#03H KAISHI为两字节乘两字节程序段KAISHI: MOV A,R3MOV B,R7MUL ABMOV R4,BMOV R5,BMOV A,R3MOV B,R6MUL AABADD A,R4MOV R4,ACLR AADDC A,BMOV B,R7MUL ABADD A,R4MOV R4,AMOV A,R3ADDC A,BMOV R3,ACLR ARLC AXCH A,R2MOV B,R6MUL ABADD A,R3MOV R3,AADDC A,BMOV 50H,R2 MOV 51H,R3 MOV 52H,R4 MOV 53H,R5 POP PSWPOP ACCRET//处理里程子程序2// Juli2: PUSH PSWPUSH ACCMOV R2,50H MOV R3,51H MOV R4,52H MOV R5,53H DIVD11: CLR CMOV A,R3 SUBB A,R7 MOV A,R2 SUBB A,R6 JC DVD11 SETB OVRETDVD111: MOV B,#10H DVD211: CLR CMOV A,R5 MOV R5,A MOV A,R4 RLC AMOV R4,A MOV A,R3 RLC AMOV R3,A XCH A,R2 XCH A,R2 MOV F0,C CLR CSUBB A,R7 MOV R1,A MOV A,R2 SUBB A,R6 ANL C,/F0 JC DVD311MOV A,R1MOV R3,AINC R5DVD311: DJNZ B,DVD211MOV A,R4MOV R2,AMOV A,R5MOV R3,ACLR OVMOV 30H,R2MOV 31H,R3POP ACCPOP PSWNOPRET//十六进制转换乘BCD子程序// BCDC: PUSH ACCPUSH PSWMOV R6,30HMOV R7,31HCLR AMOV R3,AMOV R4,AMOV R5,AMOV R2,#10HHB322: MOV A,R7RLC AMOV R7,AMOV A,R6RLC AMOV R6,AMOV A,R5DA AMOV R5,AMOV A,R4ADDC A,R4DA AMOV R4,AMOV A,R3ADDC A,R3DJNZ R2,HB322MOV 20H,R3MOV 21H,R4MOV 22H,R5POP PSWPOP ACCNOPRET//算速度十六进制值子程序// SUDU: PUSH PSWPUSH ACCJB P1.2,KMSJMP JUBUKM: MOV R2,#00HMOV R3,#04HMOV R4,#0F1HMOV R5,#0A0HCLR P1.4SJMP QUANJUJUBU: MOV R2,#00HMOV R3,#001HMOV R4,#05FHMOV R5,#090HCLR P1.4 QUANJU: MOV A,6BHJB P1.1,XIAN10CJNE A,#0BH,BUXIANG SJMP JC0XIAN10: CJNE A,#09H,BUXIANG SJMP JC0 BUXIANG: JC JC0SJMP BUJGJC0: MOV A,6AHCJNE A,#00H,BUJGAJMP JIANGGAO JIANGGAO: CLR P1.7MOV GEWEI,#0CHMOV SHIWEI,#0BHMOV BAIWEI,#0BHMOV QIANWEI,#0DH ACALL DIS21ACALL DELAY1MOV GEWEI,#0EHMOV SHIIWEI, #0EH MOV BAIWEI,#0EHMOV QIANWEI,#0EH ACALL DIS21SJMP QUANJUBUJU: MOV A,6BHCJNE A,#0AFH,LING0 AJMP LING1LING0: JC LING1AJMP BUJINGLING1: MOV A,6AHCJNE A,#00J,BULING0 AJMP BULING1 BULING0: JC BULING1 BULING: MOV SJIAN0,#00HMOV SJIAN1,#00HRET//4字节除2字节除法子程序// BULING1: MOV R6,6AHMOV R7,6BHDIVD: CLR CMOV A,R3SUBB A,R7MOV A,R2SUBB A,R6JC DVD1SETB OVRETDVD1: MOV B,#10HDVD2: CLR CMOV A,R5RLC AMOV R5,AMOV A,A4RLC AMOV R4,AMOV A,R3RLC AMOV R3,AXCH A,R2XCH A,R2MOV F0,CCLR CSUBB A,R7MOV R1,AMOV A,R2SUBB A,R6JC DVD3MOV R2,AMOV A,R1MOV R3,AINC R5DVD3: DJNZ B,DVD2MOV A,R4MOV R2,AMOV A,R5MOV R3,ACLR OVMOV 30H,R2MOV 31H,R3POP ACCPOP PSWSETB P1.7NOPRET//压缩BCD码转乘非压缩BCD码子程序// FENKAI: MOV R7,#02HMOV R0,#GEWEIMOV R1,#21HFENKAI1: MOV A,@R1ANL A,#0F0HSWAP AMOV @R0,AINC R0MOV A,@R1ANL A,#0FHMOV @R0,AINC R0INC R1DJNZ R7,FENKAI1RET//延时子程序//DELAY1: MOV R6,#0FFHDEL: MOV R7,#0FFHDJNZ R7,$DJNZ R6,DE;RETDELAY2: MOV R6,#02FHMOV R7,#0FFHDJNZ R7,$RET//4位串行静态显示子程序//DIS21: MOV R7,#04HMOV R0,#GEWEILED1_21: MOV A,@R0MOV DPTR,#DATA_7SEG22LED1_221: MOVC A,@A+DPTRMOV SBUF,AJNB TI,$CLR TIINC R0DJNZ R7,LED1_21RETDATA_7SEG22DB081H,0EDH,043H,049H,02DH,019H,011H,0CDH,001H,009H,07FH,077H,013H,071, 0FFH;0 1 2 3 4 5 6 7 8 9 - r o E 空显;= = = = = = = = = = = = = = = = = = = = = = = = =DIS11: MOV R7,#04HMOV R6,XIAOSHUMOV R0,#GEWEILED1_11:MOV A,@R0DJNZ R6,LED6MOV DPTR,#DATA_7SEG3SJMP LED1_31LED6: MOV DPTR,#DATA_7SEG2LED1_31: MOVC A,@A+DPTRMOV SBUF,AJNB TI,$CLR TIINC R0DJNZ R7,LED1_11RETDATA_7SEG2DB081H,0EDH,043H,049H,02DH,019,011H,0CDH,001H,009H,07FH,0A1H,0R9H,061H ; 0 1 2 3 4 5 6 7 8 9 - U J dDATA_7SEG3DB 080H,0ECH,042H,048H,02CH,018H,010H,0CCH,000H,008H,07FH; 0. 1. 2. 3. 4. 5. 6 7. 8. 9. -指导教师:年月日毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。