单片机自行车测速仪设计方案文档格式.docx
《单片机自行车测速仪设计方案文档格式.docx》由会员分享,可在线阅读,更多相关《单片机自行车测速仪设计方案文档格式.docx(43页珍藏版)》请在冰点文库上搜索。
参考文献
附录
致谢
2/25
目前环保问题已经成为一个世界性的课题,保护环境也已经成为每个人的责任,汽车已经不能够满足现在环境的要求。
且在人口众多的中国,人们的经济水平与西方国家还存在着一定的差距,人们使用的交通工具主要还是自行车,它轻巧便捷、使用简单、环保,深受大多数人的喜爱,同时也可以作为休闲运动工具,是人们锻炼身体的一种重要的工具。
但随着社会的发展,人们追求的是集成更多功能于一体的自行车,它能显示当前车子行驶的速度、里程、
行车时间、最高行驶速度,甚至还有GPS全球定位系统、MP3、短信、新闻播报等娱乐功能。
本文就是以此为基础,设计一款简单低成本多功能的测速仪,
旨在解决自行车驾驶者在行驶时能够了解当前的行驶状态,并且根据周围环境,能够做出正确的判断和操作,提高了驾驶的安全性。
另外自行车运动需一款测速装置,以了解运动情况,特别是对于运动员,他们需要一种能对实时运动情况进行测量并记录的仪器,通过记录的数据,运动员可以分析自己的训练成绩及训练过程,根据分析结果,可以调整自己的训练步骤。
并根据外界环境如温度、风速等进行适当调节运动方式,以达到最佳运动效果。
测速装置是对运动中几个参数进行测定。
现自行车测速仪的设计种类繁多,但是多数的测速装置都是由机械式或模拟数字电路来实现的,都存在体积大、精度低、不直观、功耗大、功能少等缺点。
本文所述测速系统是以单片机为核心实现的,具有功能多、功耗小、直观准确以及可显示时间、总里程、温度、速度等优点。
随着微型计算机可靠性提高和价格下降,用单片机测量电机转速技术已经成熟,但是这种技术目前主要还是用于工业生产方面,测速装置用于生活中还是少之又少。
欲提高测量精度,必须先测出准确的转速,而原先在可控硅调速电路中采用的测速发电机方式已不能满足要求,必须采用数字测速的方法。
转
速的测量方法很多,根据脉冲计数来实现转速测量的方法主要有M法<
测频
法)、T法<
测周期法)和MPT法<
频率周期法),该系统采用了M法<
法)。
转速检测方式采用霍尔脉冲法测量转速有两种简单的方式。
本设计采用频率法,检测的是输入脉冲数,这种方式又称频率法。
它测出一定时间内外界所输入的脉冲的个数。
在控制系统中占有非常重要的地位。
对测速装置的要求是分辨能力强、高精度和尽可能短的检测时间。
所设计的基于霍尔元件的脉冲
3/25
发生器要求具有成本低、结构简单、使用方便、性能好等特点。
由于需要采用霍尔传感器的应用领域,如汽车、电机、手机和电脑都已经采用了该器件,而且这些市场在未来几年的增长较为稳定,而其他一些新的应用市场又不足以与上述几个市场相比,因此霍尔传感器在全球总的市场份额是
较为稳定的,每年的增长率基本上保持在5%到10%之间。
因为各种应用电机
的部件、节气门位置的检测、各种阀体位置的检测、或者电磁感应的位置都会用到霍尔传感器。
而且,在中国市场中,国外厂商为了降低成本,陆续将零部件拿到中国进行设计和生产,这也进一步提升了中国市场霍尔传感器的使用量。
随着它在电子消费市场上的应用越来越广,如何控制功耗和成本将是厂商面临的挑战。
而且,它还面临生产测试技术方面的挑战。
国内外现在已经有生产销售类似的自行车测速仪里程表,有些简单的产品
功能比较单一,就是单单只有测速或里程的功能,然而一些复杂的产品除了测
速和里程功能外,还集成了GPS全球定位、单次行车里程、平均速度、时钟、
行车时间、车轮转数。
未来的发展趋势可能还将加入MP3和短信收发、新闻播
报、通讯功能等,使得自行车测速仪更加的人性化、现代化、生活化。
相信未来的测速仪会受到更多人的青睐,也将成为人类社会生活中的必需品。
设计主要任务是利用单片机、时钟芯片、温度传感器等部件设计的一个可
用LCD显示时间温度,行驶里程及速度的自行车测速仪。
本文主要介绍了自行车测速仪的设计思想、电路原理、方案以及元件的选择等内容,整体上分为硬件部分和软件部分设计。
本文首先扼要的对测速仪设计进行总体的介绍;
继而具体介绍了自行车测速仪的硬件设计,包括传感器的选择、时钟芯片的选择、单片机的选择、存储器的选择、显示电路的设计等;
然后阐述了该自行车测速仪的软件设计,包括主程序设计,子程序的设计;
最后对本次设计进行了系统的总结。
本设计的具体要求如下:
(1>
对自行车进行实时速度的测量,显示出速度值。
(2>
能够计算单次使用自行车的路程。
(3>
能测量出当前环境的温度,以供使用者决定是否适宜进行运动。
(4>
显示行车里程,实时时间,并且具有断电保护的功能。
4/25
2系统总体方案设计
2.1系统方案
系统主要分成四个模块,分别是时钟模块、温度模块、速度模块、显示模块。
温度及速度模块通过外部传感器对相应参数进行测量,将物理信号转换为电信号输入单片机,单片机对输入的电信号进行处理,最后通过显示器输出显示。
本设计中用到的主要元件包括单片机、时钟芯片、温度传感器、速度传感器以及液晶显示器。
控制系统的方案计框图如图1所示。
该方案是以单片机为核心,通过速度传感器将所感应到的速度传送到单片机当中,通过单片机的处理计算并通过显示器将所计算的速度和里程显示出来。
时间和温度的显示是通过时钟芯片和温度传感器并以单片机为核心通过显示器显示而按键用于调整时间。
速度传感器
显示器
时钟芯片单片机
按键
温度传感器
图2—1系统框图
单片机普遍认为是在一块硅片上集成了中央处理器、存储器和各种输入、输出接口,这样的一块芯片具有一台计算机的功能,因而被称为单片微型计算机。
系统所使用的是通用型单片机,它可以把可开发资源全部提供给使用者。
位AT89C51CHMOS工艺单片机被设计用于处理高速计算和快速输入8
/输
出。
MCS51
单片机典型的应用是高速事件控制系统。
商业应用包括调制解调
器,电动机控制系统,打印机,影印机,空调控制系统,磁盘驱动器和医疗设
备。
汽车工业把
MCS51
单片机用于发动机控制系统,悬挂系统和反锁制动系
统。
AT89C51
尤其很好适用于得益于它的处理速度和增强型片上外围功能集,
诸如:
汽车动力控制,车辆动态悬挂,反锁制动和稳定性控制应用。
由于这些
决定性应用,市场需要一种可靠的具有低干扰潜伏响应的费用-效能控制器,服
务大量时间和事件驱动的在实时应用需要的集成外围的能力,具有在单一程序
5/25
包中高出平均处理功率的中央处理器。
拥有操作不可预测的设备的经济和法律风险是很高的。
一旦进入市场,尤其任务决定性应用诸如自动驾驶仪或反锁制
动系统,错误将是财力上所禁止的。
重新设计的费用可以高达500K美元,如
果产品族享有同样内核或外围设计缺陷的话,费用会更高。
另外,部件的替代
品领域是极其昂贵的,因为设备要用来把模块典型地焊接成一个总体的价值比各个部件高几倍。
为了缓和这些问题,在最坏的环境和电压条件下对这些单片
机进行无论在部件级别还是系统级别上的综合测试是必需的。
IntelChandler平
台工程组提供了各种单片机和处理器的系统验证。
这种系统的验证处理可以被分解为三个主要部分。
系统的类型和应用需求决定了能够在设备上执行的测试类型。
时钟芯片种类非常多,有内置晶振及充电电池类型,还有外置晶振类型,
如现在流行的DS1302、DS1307、PCF8485、SB2068等等。
由于DS1302时钟芯片的电路接口简单,价格低廉、使用方便,被广泛地采用。
在系统中采用了DS1302时钟芯片,该实时时钟电路是DALLAS公司的一种具有涓细电流充电
能力的电路,主要特点是采用串行数据传输,可为掉电保护电源提供可编程的
充电功能,并且可以关闭充电功能,采用普通32.768kHz晶振。
DS1302时钟芯片是美国DALLAS公司推出的一种高性能、低功耗、带
RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具
有闰年补偿功能,工作电压为2.5V~5.5V。
DS1302内部有一个31×
8的用于临时性存放数据的RAM寄存器。
DS1302是DS1202的升级产品,与DS1202兼容,但增加了主电源/后背电源双电源引脚,同时提供了对后背电源进行涓细电
流充电的能力。
温度传感器是利用物质各种物理性质随温度变化的规律把温度转换为电量的传感器,它是温度测量仪表的核心部分。
由于品种繁多,所以在工业应用中
温度传感器分类的方式方法有很多种。
由于DS18B20测试环境温度,数据直观、成本低廉,精度可达0.1℃,所以在设计中采用了DS18B20温度传感器。
DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器。
与传统的热敏电阻相比,能够直接读出被测温度并且可根
据实际要求通过简单的编程实现9~12位的数字值读数方式。
可以分别在93.75ms和750ms内完成9位和12位的数字量,并且从DS18B20读出的信息或写入
DS18B20的信息仅需要一根口线<
单线接口)读写,温度变换功率来源于数据
6/25
总线,总线本身也可以向所挂接的DS18B20供电,而无需额外电源。
因而使用
DS18B20可使系统结构更趋简单,可靠性更高。
在测温精度、转换时间、传输距离、分辨率等方面较DS1820有了很大的改进,给用户带来了更方便的使用
和更令人满意的效果。
其主要特点如下:
独特的单线接口仅需要一个端口引脚进行通信。
(2>
多个DS18B20可以并联在惟一的总线上,实现多点组网功能。
可通过数据线供电,电压范围为3.0~5.5V。
(4>
零待机功耗。
(5>
报警搜索命令识别并标志超过程序限定温度<
温度报警条件)的器件。
(6>
负电压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正
常工作。
测速传感器是对被测物的运行速度进行测量并转化成可输出信号的传感
器。
测速传感器包括测量线速度传感器和测量转速度传感器。
而测量转速的方
式很多,常见的有:
霍尔传感器<
例如你提到的那一种)、光电传感器
<
还分反
射式与透射式)、以旋转编码器等等。
设计中采用了霍尔传感器进行测速,它具有对磁场敏感、结构简单、体积
小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自动
化、计算机和信息技术等领域得到广泛的应用。
霍尔传感器
44E系列是Allegro
MicroSystems公司生产的宽温、开关型霍尔效应传感器,其工作温度范围可达
-
40℃~150℃。
它由电压调整电路、反相电源保护电路、霍尔元件、温度补偿电
路、微信号放大器、施密特触发器和
OC门输出极构成,通过使用上拉电阻可
以将其输出接入CMOS逻辑电路。
由于设计中的需显示英文字符,且显示的数据比较多,所以不宜采用数码
管显示。
而应该采用液晶屏显示,现在液晶显示屏种类繁多,
12864、1602
等
都是常用的液晶显示屏。
而12864
顾名思义像素是
128*64,能显示
8*4个汉
字,因型号不同,有的带汉字库,有的不带,能显示图像效果,功能比
1602强
大。
1602一般只用于显示字母、数字和符号能显示
16*2
个字符,具有一些显
示效果,如字符一个个显示、字符从左到右或从右到左显示等等,显示效果简
单,价格低廉。
由于考虑到设计中不需汉字显示且显示字符足够。
因此,系统
7/25
采用1602液晶显示。
3.1.1AT89C51单片机简介
管脚说明如图2所示:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当
P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输
入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收
输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口
被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编
程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输
出4个TTL门电流,当P2口被写“1时”,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内
部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行
存取时,P2口输出地址的高八位。
在给出地址“1时”,它利用内部上拉优势,
当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内
容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL
门电流。
当P3口写入“1后”,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流<
ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD<
串行输入口)
P3.1TXD<
串行输出口)
P3.2/INT0<
外部中断0)
P3.3/INT1<
外部中断1)
P3.4T0<
记时器0外部输入)
P3.5T1<
记时器1外部输入)
8/25
P3.6/WR<
外部数据存储器写选通)
P3.7/RD<
外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电
平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地
址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE
端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用
作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存
储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该
引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机
器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器<
0000H-
FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定
为RESET;
当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源<
VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
9/25
图2AT89C51+引脚图
如图3所示为单片机外围电路连接图。
由于设计采用STC单片机,此系列
单片机具有掉电自动复位的功能,所以在单片机中并未设计复位电路。
且在仿
真中,单片机晶振在其属性中可调,即在仿真电路中没有晶振电路。
但是在实
际的硬件电路中晶振必须要接入。
因此,系统采用12MHz的晶振。
图中的两个
按键是调节时钟芯片的时间。
由于在仿真图中并没有霍尔元件可功模拟,即在P3.2接入数字激励源,代替了实际的电路中的霍尔传感器。
图3单片机外围电路图
DS1302的引脚排列,其中VCC1为主电源,VCC2为后备电源。
在主电源关
闭的情况下,也能保持时钟的连续运行。
DS1302由VCC1或VCC2两者中的较
大者供电。
当VCC2大于VCC1+0.2V时,VCC2给DS1302供电。
当VCC2小
于VCC1时,DS1302由VCC1供电。
X1和X2是振荡源,外接32.768kHz晶
振。
RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。
RST输入有两种功能:
首先,RST接通控制逻辑,允许地址/命令序列送入
移位寄存器;
其次,
RST
提供终止单字节或多字节数据的传送手段。
RST为
高电平时,所有的数据传送被初始化,允许对
DS1302
进行操作。
如果在传送
10/25
过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
上电运行时,在VCC>
2.0V之前,RST必须保持低电平。
只有在SCLK为低电平时,才能将RST置为高电平。
I/O为串行数据输入输出端,后面有详细说明,SCLK为时钟输入端。
如图4所示为DS1302的引脚功能图。
图4DS1302引脚图
DS1302控制字如表1所示。
表1DS1302控制字
7
6
5
4
3
2
1
A4
A3
A2
A1
A0
控制字的最高有效位位7:
必须是逻辑
1,如果它为
0,则不能把数据
写入到DS1302中。
位6:
如果为0,则表示存取日历时钟数据,为
1表示存取RAM数据。
位5至位1<
A4~A0):
指示操作单元的地址。
位0<
最低有效位):
如为
0,表示要进行写操作,为
1表示进行读操
作。
控制字总是从最低位开始输出。
在控制字指令输入后的下一个
SCLK时钟的上
升沿时,数据被写入
DS1302,数据输入从最低位<
0位)开始。
同样,在紧跟8
位的控制字指令后的下一个
SCLK脉冲的下降沿,读出
DS1302的数据,读出
的数据也是从最低位到最高位。
DS1302有关日历、时间的寄存器如表
2所示。
表2
DS1302日历、时间寄存器
R
W
BIT
BIT5
BIT4
RANG
E
81h
80h
CH
10Seconds
Seconds
00-59
83h
82h
10Minutes
Minutes
12/2
10
1-12
85h
84h
AM/
Hour
/0-23
PM
87h
86h
10Date
Date
1-31
89h
88h
10Mo
Mon
n
8B
8A
Day
1-7
h
8D
8C
10Year
Year
00-99
11/25
8F
8E
WP
—
91h
90hTCS
TCS
DS
RS
这张表是DS1302内部的7个与时间、日期有关的寄存器图和一个写保护寄存器,我们要做的就是将初始设置的时间数据写入这几个寄存器,然后再不断地读取这几个寄存器来获取实时时间。
这几个寄存器的说明如下:
秒寄存器<
81h、80h)的位7定