基于单片机的速度里程表设计.docx
《基于单片机的速度里程表设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的速度里程表设计.docx(20页珍藏版)》请在冰豆网上搜索。
基于单片机的速度里程表设计
湖南工业职业技术学院
毕业实践任务书
系名称电气工程系
专业及班级
学生姓名________________________
学号________________________
毕业实践题目:
基于单片机的汽车里程表设计
指导教师(签字):
教研室主任(签字):
系主任(签字):
2008年1月20日
基于单片机的速度里程表设计
毕业实践课题及任务
课题简介
该课题主要是利用单片机技术进行的一项软、硬件开发技术。
其目的是培养学生利用单片机技术解决生产、生活中的实际问题,对提高学生设计能力动手能力和工程实践技能有较重要的意义。
学生应具备电路分析、电子技术、单片机技术等方面的相关知识,熟悉单片机系统流程图、硬件结构图及汇编语言,能进行单片机控制电路的连接、程序编写、输入、修改及调试等.
基于单片机的速度里程表设计
课题任务要求
一、毕业设计(论文)的内容概述:
汽车里程表是一种具有速度测量,行程测量、超速报警及LCD显示功能的单片机应用系统,利用硬件电路和软件控制来实现上述功能。
二、毕业设计(论文)的要求与数据:
1、写出汽车里程表的控制要求分析
2、画出硬件电路接线图
3、画出控制系统流程图
4、编写控制程序
5、写出汽车里程表的使用说明
三、毕业设计(论文)应完成的工作:
1、毕业设计(论文)应有详细的设计方案、控制电路、控制程序及分析说明
、毕业设计(论文)应在规定的时间内完成23、毕业设计(论文)应严格按设计规范打印、装订
基于单片机的速度里程表设计
进程安排
参考资料
1、单片机原理及应用北京航空航天大学出版社孙涵芳主编
2、电子技术高教出版社胡宴如主编
3、电子线路CAD机械工业出版社王廷才主编
4、单片机应用程序设计技术北京航空航天大学出版社周航慈主编
基于单片机的速度里程表设计
湖南工业职业技术学院毕业实践开题报告书
专业系
学生姓名
班级
学号
课题名称
课题准备情况
思路和方法
拟重点解决的问题
计划进度
指导教师意见
签名:
年月日
基于单片机的速度里程表设计
湖南工业职业技术学院毕业实践考核表
专业系
学生姓名
班级
学号
课题名称
课题完成情况及自我评价
指导教师评价
评语
评分
(共40分)
日年月签名:
评阅教师评价
评语
评分
分)(共30
日月年签名:
答辩小组评价
评语
评分
分)30(共
组长签名:
年月日
毕业实践评审组审核
经综合考核该学生毕业实践得分分,评定为
组长签名:
年月日
基于单片机的速度里程表设计
实验原理。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
3
方案论证和选择。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
3
所用设备、器材。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
3
硬件方案(完整的电路原理图)。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
4
软件方案(程序流程图,源程序(含注释))。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
10
调试过程。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
13
运行结果及分析。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
16
实验的收获体会及建议。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
17
组长对本人及组员评价。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
17
17
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
。
参考文献:
作者、名称、出版社、出版日期。
.
基于单片机的速度里程表设计
实验原理:
本设计能实时地将所测的速度与累计里程数显示出来,主要是将传感器输入到单片机的脉冲信号的频率(传感器将不同车速转变成不同频率的脉冲信号)实时地测量出来,考虑到信号的衰减、干扰等影响,在信号送入单片机前应对其进行放大整形。
本设计用两个按键来控制显示速度或里程。
单片机利用定时器T0的控制功能测出输入信号的周期后,再利用单片机的算术运算功能将周期转换成速度,同时每秒钟进行一次里程累计,从而计算出总里程。
最后将得出的速度、里程值存储在EEPROM中,并根据两个按键的选择情况来显示速度或里程。
为了方便计算要显示数据值的段码,可再将其转换成压缩的BCD码,然后通过查表将要显示的数据值中每一位的压缩BCD码转换成8段码送到显示缓冲区,最后经串口数据存储器送至LED显示模块以显示所测的速度或里程。
本设计的里程数的算法是一种大概的算法(假设在一定时间内汽车是匀速行进,平均速度与时间的乘积即为里程数)。
设计时,应综合考虑测速精度和系统反应时间。
本设计用测量脉冲频率来计算速度,因而具有较高的测速精度。
在计算里程时取了汽车的理想状态。
实际中,误差控制在几米之内,相对于整个里程来说不是很大。
为了保证系统的实时性,系统的速度转换模块和显示数据转BCD码模块都采用快速算法。
另外,还应尽量保证其他子模块在编程时的通用性和高效性。
本设计的速度和里程值采用8位显示,并包含两个小数位。
方案论证和选择
本速度里程表设计以单片机和光电传感器为核心。
传感器将不同车速转变成的不同频率的脉冲信号输入到单片机进行控制与计算,再采用LED模块进行显示,使得速度里程数据能直观的显示给使用者。
所用设备、器材组成
本速度里程表由信号预处理电路、AT89C51单片机、串口液晶显示电路、串口数据存储电路和系统软件组成。
其中信号预处理电路包含信号放大、波形变换和波形整形。
信号预处理电路中的放大器用于对待测信号进行放大,以降低对待测信号的幅度要求;波形变换和波形整形电路则用来将放大的信号转换成可与单片机接口的TTL信号;通过单片机的设置可使INT0引脚能够对内部定时器T0的工作进行控制,这样能精确地测出加到INT0引脚的正总I2C模块,所得的数据采用LED;设计中速度显示采用脉冲数(即测出脉冲信号的周期).
基于单片机的速度里程表设计来存储,因而节省了所需单片机的口线和外围器件,同时也简化了显示EEPROM线并通过模块的写数据/命令子LED部分的软件编程系统软件包括单片机和LED模块的初始化模块、码BCD模块、周期测量模块、速度里程计算模块、数据存储模块、速度和里程显示数据转系统的原理框图如,模块、显示数据消多余零模块、数据显示模块以及实时中断服务模块等图1所示。
图1系统的原理框图
硬件方案(完整的电路原理图)
一、系统硬件设计
1信号预处理电路
信号预处理电路如图3所示,系统的信号预处理电路由二级电路构成,第一级是由开关三极管组成的零偏置放大器,采用开关三极管可以保证放大器具有良好的高频响应。
当输入信号为零或负电压时,三极管截止,电路输出高电平;而当输入信号为正电压时,三极管导通,此时输出电压随着输入电压的上升而下降,这使得速度里程表既可以测量任意方波信号的频率,也可以测量正弦波信号的频率。
由于放大器的放大功能降低了对待测信号的幅度要求,因此,系统能对任意大于0.5V的正弦波和脉冲信号进行测量。
预处理电路的第二级采用74LS14把放大器生成的单相脉冲转换成与COMS电平相兼容的方波信号(如图4所示),同时将输出信号加到单片机的P3.2口上。
基于单片机的速度里程表设计图3信号预处理电路图
图4施密特触发器对脉冲的整形
利用施密特触发器状态转换过程中的正反馈作用,可以把边沿变化缓慢的周期性信号变换为边沿很陡的矩形脉冲信号。
输入的信号只要幅度大于VT+,即可在施密特触发器的输出端得到同等频率的矩形脉冲信号。
从传感器得到的矩形脉冲经传输后往往发生波形畸变。
当传输线上的电容较大时,波形的上升沿将明显变坏;当传输线较长,而且接受端的阻抗与传输线的阻抗不匹配时,在波形的上升沿和下降沿将产生振荡现象;当其他脉冲信号通过导线间的分布电容或公共电源线叠加到矩形脉冲信号时,信号上将出现附加的噪声。
无论出现上述的那一种情况,都可以通过用施密特反相触发器整形而得到比较理想的矩形脉冲波形。
只要施密特触发器的VT+和VT-设置得合适,均能受到满意的整形效果。
2EEPROMAT24C02的应用
AT24C02是CMOS2048位串行EEPROM,在内部组织成256×8位。
AT24C02的特点是具有允许在简单的二线总线上工作的串行接口和软件协议。
如图5所示,在本设计中用芯片AT24C02的SDA端与单片机的P3.7口相连,SCL端与单片机的P3.5口相连。
因为在这个I2C总线上只有一个器件,所以把AT24C02的地址设为000,即把A0、A1、A2都接地。
单片机计算出来的里程数据通过SDA、SCL向AT24C02输送数据。
单片机首先向AT24C02发送写信号,当确认后从单片机内部的数据储存单元提取数据然后向AT24C02的内部地址传送数据。
当显示里程时,单片机首先向AT24C02发送读信号,然后确认后,单片机从AT24C02内部的地址向单片机的读出单元字节读出数据,供显示所用。
.
基于单片机的速度里程表设计
图5AT24C02与单片机的接口电路图
3显示部分
本设计的显示模块包括MC14511BCP、CD4076、74LS138和8个LED显示管等器件。
MC14511是将锁存、译码、驱动三种功能集于一身的“三合一”器件。
锁存器的作用是避免在计数过程中出现跳数现象,便于观察和记录。
用译码器将BCD码转换成7段码,再经过大电流反相器,驱动共阴极LED数码管。
译码器属于非时序电路,其输出状态与时钟无关,仅取决于输入的BCD码。
74LS138的作用相当于位选的功能,当C,B,A的输入分别为“000、001、010、011、100、101、110、111”时分别选择不同的MC14511,从而在不同位上显示不同的数字和小数点。
CD4076是CMOS4位三态输出D寄存器,通过74LS138的Y6,Y7来控制其CP的工作,从而使CD4076来控制小数点显示。
图6是显示模块
显示模块框6图
基于单片