单片机的智能里程表设计

摘 要自行车在以前是主要的代步和运输工具;但随着经济的快速增长,人们的生活水平越来越高,摩托车和小汽车已经在城市中普及,但自行车没有被社会淘汰,反而自行车运动变成了人们娱乐、休闲、锻炼的首选。自行车运动被划入到休闲时尚运动中,人们对其相关零件和附加配件更加关注并且越来越需求。在这个需求下,人们开始研究自行车数字里程表,就像安装在汽车或摩托车上的速度里程表一样可以显示速度和里程。在自行车数字里程表被研制出来并被人们使用后,人们可以清楚地从里程表看到上自行车当前的速度、里程等信息。本篇论文说明了一款以STC89C52单片机作为主控制器芯片,用霍尔元件来测量转速的自行车速度里程表的设计。本设计的软件部分采用C语言来进行编程,整体采用模块化设计思想;该系统的硬件电路比较简单,子程序具有通用性,完全满足本次设计的要求。本课题设计在主控上使用了52单片机来担任主控核心,不但使得成本大大降低,更是将系统的功耗特性以及使用性能得到大大提升。在软硬件设计上,本文以先搭建硬件系统后进行软件程序代码编写的顺序进行设计,通过Protel、Keil以及Visio等软件平台的辅助,大大加快了毕业设计的进程,最终经过了大量的试验验证以及改进优化,本系统实现了预期拟设的所有功能指标。
目 录
一、 引言 1
(一)设计由来 1
(二)主要设计任务 1
二、 方案设计 2
(一)方案选择 2
(二)总体设计方案 2
三、硬件系统设计 3
(一)STC89C52单片机 3
1.STC89C52单片机简介 3
2.单片机最小系统设计 4
(二)显示模块 5
(三)霍尔传感器 6
(四)DS1302实时时钟芯片 7
(五)蜂鸣器 8
四、软件系统设计 8
(一) 程序流程图 8
1.主程序流程图 8
2.显示流程图 9
3.速度处理流程图如图43所示 9
五、系统软件调试 10
(一)整机调试 10
总 结 11
致 谢 12
参考文献 13

 *好棒文|www.hbsrm.com +Q: ^351916072* 
附录一 原理图 14
附录二 PCB图 15
附录三 元件列表 16
附录四 程序 17
一、 引言
(一)设计由来
在两百多年前,自行车就被人类发明和使用,在这200多年里人们一直在不断的努力对自行车这一简单而实用的代步工具进行改进和提升。人类生产力水平越来越高,人们不断追求着生活品质而且也越来越热爱单车运动,并且对单车上的附件配置的研究和使用越来越多,自行车运动开始转变为休闲时尚的运动。
自行车运动被划入到休闲时尚运动中,人们对其相关零件和附加配件更加关注并且越来越需求。在这个需求下,人们开始研究自行车数字里程表,就像安装在汽车或摩托车上的速度里程表一样可以显示速度和里程。在自行车数字里程表被研制出来并被人们使用后,人们可以清楚地从里程表看到上自行车当前的速度、里程等信息。本篇论文说明了基于STC89C52单片机并用霍尔元件做计数设计的自行车速度里程表的设计。作为自行车的一大辅助工具,它可以显示速度、里程和时间。本设计的实物是一种小型的速度里程表,它采用了MCS52系列单片机为设计核心,因此这种速度里程表使用起来更简单,操作起来更容易,非常适合人们使用。
本论文在设计方面有的清晰的逻辑顺序,首先对此课题的设计任务进行分析、选择和确定,然后对设计任务在方案上进行论证。在设计任务的论证上有两方面,一方面是对课题硬件方案的分析认证,另一方面是对课题软件方面的设计和论证。在软、硬件方面的认证成立后对速度里程表在硬件方面的设计进行详细的介绍;其中包括在设计显示电路时的思路和注意点以及怎样选择合适的单片机和传感器;然后用简介明了的语言把自行车的速度里程表的软件设计思路和方法阐述出来;最后把仿真过程遇到的问题进行详细的说明和分析,并且系统的总结本次设计。
(二)主要设计任务
1.设计完成一款可显示里程、速度等信息的数字里程表,它能够适用于各种类型的自行车。
2.软件设计包括:显示子程序、定时中断子程序以及芯片的初始化程序等,软件采用C语言编写程序。
3.硬件电路具体包括:STC89C52单片机的外围电路和等液晶显示电路。
二、 方案设计
(一)方案选择
采用单片机实现:在预先规划的位置上安装好霍尔传感器,当当磁铁经过霍尔传感器时,脉冲信号会在测量电路上反应出来。霍尔传感器处理和计数脉冲信号并把数据传输到单片机系统,单片机系统就能够把当前自行车的速度计算出来,再结合自行车的运动时间就能够算出自行车现在的平均速度,再把这些数据传送到LCD显示屏上,这样自行车行驶的速度、路程等物理量都可以通过显示屏来显示。
(二)总体设计方案
本设计的任务是:采用单片机实现:在预先规划的位置上安装好霍尔传感器,当永久磁铁经过霍尔传感器时,脉冲信号会在测量电路上反应出来。通过霍尔传感器收集和计数脉冲信号并传送到单片机系统中,再结合自行车行驶的时间就能算出自行车行驶的平均速度和总路程等物理量,再通过LED显示器显示出来计算出的数据。
本次设计思路如下:设定C为自行车轮子的周长,如果把n个永久磁铁安装在自行车轮子上,那么根据公式就可以计算得出C/n是测量的实际里程值的最大误差。经过系统的分析,在此设计中设定永久磁铁的数量为1;当自行车轮子转动一圈后,霍尔元件传感器会采集到一个脉冲信号并把此信号传送到单片机系统中;单片机系统会进行一次计数中断。传感器每收到一个脉冲信号,车轮转动一圈系统就会收到一次中断;里程值就是用中断数a与车轮的周长C的乘积来表示。再结合车轮每转一圈用的时间t,就可以计算出自行车当时的速度。里程表具有超速报警功能,可以设置报警速度并具有保存功能,如果自行车的速度超过程序限定的报警速度,系统便发出报警信号,蜂鸣器响。
本次设计的实现方法以及设计要求需要达到的各项指标如下:
1. 通过霍尔传感器来测量并发送脉冲信号。
2. 计数脉冲信号
即实现:使用单片机中的计数器对霍尔传感器产生的脉冲信号进行计数。
3. 利用单片机处理处理已经记录的数据,总里程数和瞬时速度要用LED显示器来显示;
实现:利用C语言进行软件部分编程,对数据进行处理得到需要的数值;
最终实现目标:自行车的速度里程表具有速度测试、里程数测试和显示功能,速度里程表采用STC89C52单片机作控制系统,里程和速度通过显示电路显示,系统框图如图21所示。
图21 系统框图
三、硬件系统设计
(一)STC89C52单片机
1.STC89C52单片机简介
在实物设计中,我选择了STC89C52单片机来作为这次设计系统的主控制器芯片,这是一款CPU搭配若干外围设备的单片机历史悠久的单片机;这是一种历史悠久的经典结构,当前许多性能高端的单片机还在使用这种结构。其CPU(MCS51)的内部结构采用了经典的冯诺依曼架构,这款架构几乎应用在所有早期单片机中用于进行数据运算,其经典性不言而喻。在其CPU周围的模块为一个GPIO口控制器、定时器0和1、外部中断管理器、UART模块、FLASH以及RAM等,这些围绕者CPU的模块被称为外围模块,这些模块主要由51单片机的生产厂家依照用户需求自行加入的,只有CPU是沿用的INTEL公司的原版MCS51,这就是我们目前能在市面上经常看到很多种51的缘故,所有这些不同名称的51单片机内部的MCS51内核是相同的,只有外围模块不同,如STC89C51单片机和STC89C52单片机,这两款单片机的不容点是STC89C52的FLASH和RAM容量都是STC89C51的两倍,并且比STC89C51单片机多了一个定时器2。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/1882.html

好棒文