已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
程序开发文档 编写者:杨显洁 日期:2012-12-15目录1、 摘要 21.1项目背景 31.2项目的主要任务及内容32、自行车的里程表总体方案设计 4 2.1 任务分析与实现 4 2.2自行车的里程表硬件方案设计 4 2.3自行车的里程表软件方案设计53、 自行车的里程表硬件电路设计 7 3.1概述7 3.2传感器及其测量系统7 3.3单片机的原理及应用9 3.4显示电路的设计 12 4、附录 12 1 摘 要随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。自行车的速度里程表能够满足人们最基本的需求,让人们能清楚地知道当前的里程等物理量。本文主要阐述一种基于霍尔元件的自行车的里程表的设计。以 MSP430单片机为核心,OH1881 霍尔传感器测转数,实现对自行车里程的测量统计,将自行车的里程数用LCD实时显示。文章详细介绍了自行车的里程表的硬件电路和软件设计。硬件部分利用霍尔元件将自行车每转一圈的脉冲数传入单片机系统,然后单片机系统将信号经过处理送显示。软件部分用C语言进行编程,采用模块化设计思想。该系统硬件电路简单,子程序具有通用性,完全符合设计要求。关键词:里程;霍尔元件;单片机MSP430;LED显示11.1 项目背景自行车被发明及使用到现在已有两百多年的历史,这两百年间人类在不断的尝试与研发过程中,将玩具式的木马车转换到今日各式新颖休闲运动自行车,自行车发展的目的也从最早的交通代步的工具转换成休闲娱乐运动的用途。随着居民生活水平的不断提高,自行车不再仅仅是普通的运输、代步的工具,而是成为人们娱乐、休闲、锻炼的首选。因此,人们希望自行车的功用更强大,能给人们带来更多的方便。自行车里程表作为自行车的一大辅助工具也正是随着这个要求而迅速发展的。本设计采用了MSP430系列单片机设计一种体积小、操作简单的便携式自行车的里程表,它能自动地显示当前自行车行走的距离。 1.2 项目的主要任务及内容本项目主要任务是利用霍尔元件、单片机等部件设计一个可用LCD液晶显示屏实时显示里程的自行车的里程表。本文主要介绍了自行车的里程表的设计思想、电路原理、方案论证以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。本文首先扼要对该项目的任务进行方案论证,包括硬件方案和软件方案的设计;继而具体介绍了自行车的里程表的硬件设计,包括传感器的选择、单片机的选择、显示电路的设计;然后阐述了该自行车的速度里程表的软件设计,包括数据处理子程序的设计、显示子程序的设计;最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行了系统的总结。 具体的硬件电路包括MSP430单片机的外围电路以及LCD液晶显示屏等。软件设计包括:芯片的初始化程序、显示子程序等,软件采用C语言编写,软件设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。 2 自行车的里程表总体方案设计2.1 任务分析与实现本设计的任务是:以MSP430单片机为处理核心,用传感器将车轮的转数转换为电脉冲,进行处理后送入单片机。里程的测量,是经过计数器测出总的脉冲数,再经过单片机的计算得出里程,其结果通过LCD液晶显示屏显示出来。本系统总体思路如下:假定轮圈的周长为L,当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚P2.5中断0端输入,传感器每获取一个脉冲信号即对系统提供一次计数。每次代表车轮转动一圈,中断数n轮圈的周长为L的乘积为里程值。要求达到的各项指标及实现方法如下:1. 利用霍尔传感器产生里程数的脉冲信号。2. 对脉冲信号进行计数。实现:对霍尔传感器脉冲信号进行计数。3. 对数据进行处理,要求用LCD液晶显示屏显示里程总数。实现:利用软件编程,对数据进行处理得到需要的数值。最终实现目标:自行车的里程表具有里程与显示功能。2.2 自行车的速度里程表硬件方案设计常用的测速元件有霍尔传感器、光电传感器和光电编码器。里程测量传感器的选择也有以下几种方案:使用光敏电阻对里程进行测量、利用编码器对车轮的圈数进行测量、利用霍尔传感器对里程进行测量、利用干簧管型传感器测量里程。光敏电阻对光特别敏感,当白天行驶时,外界光源将导致光敏电阻发出错误信号;光敏电阻对环境的要求相当高,如果光敏或发光二极管被泥沙或灰尘所覆盖,光敏电阻就不能再进行准确测量;而编码器必须安装在车轴上,安装较为复杂;霍尔元件或干簧管不但不受天气的影响,即使被泥沙或灰尘覆盖也不会有影响,而且安装方便。所以本设计采用霍尔元件对里程与速度进行测量,既简单易行,又经济适用。使用霍尔传感器获得脉冲信号,其机械结构也可以做得较为简单,只要在转轴的齿轮盘上粘上一粒磁钢,霍尔元件固定在前叉上,当车子转动时霍尔元件靠近磁钢,就有信号输出,转轴旋转时,就会不断地产生脉冲信号输出。如果在齿轮盘上粘上多粒磁钢,可以实现旋转一周,获得多个脉冲输出。在粘磁钢时要注意,霍尔传感器对磁场方向敏感,粘之前可以先手动接近一下传感器,如果没有信号输出,可以换一个方向再试。这种传感器不怕灰尘、油污,在工业现场应用广泛。霍尔传感器是对磁敏感的传感元件,常用于信号采集的有OH1881,该传感器是一个3端器件,外形与三极管相似,只要接上电源、地,即可工作,工作电压范围宽,使用非常方便。A44E的外形如图2.1所示。 OH1881 1-Vcc 2-GND 3-OUT图2.1 OH1881外形图单片机由于将CPU、内存和一些必要的接口集成到一个芯片上,并且面向控制功能将结构作了一定的优化,所以它有一般芯片不具有的特点:1. 体积小、重量轻;2. 电源单一、功耗低;3. 功能强、价格低;4. 全部集成在一块芯片上,布线短、合理;5. 数据大部分在单片机内传送,运行速度快、抗干扰能力强、可靠性高。目前,单片机被广泛的应用于测控系统、工业自动化、智能仪表、集成智能传感器、机电一体化产品、家用电器领域、办公自动化领域、汽车电子与航空航天器电子系统以及单片机的多机系统等领域。在设计中选用的是MSP430单片机。外部信号霍尔传感器外部存储器MSP430单片机里程显示里程显示里程显示图2.2 系统的原理框图2.3 自行车的里程表软件方案设计通过软件控制单片机的功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性,遵循模块化设计的原则,采用自顶向下的设计方法。模块化设计使程序的可读性好、修改及完善方便。软件设计包括主程序、行车过程中里程计算子程序、延时子程序、中断服务子程序、显示子程序等等。中断子程序是将传感器产生的信号接入外部中断,利用中断对对里程进行累加。数据处理子程序是将进入单片机的脉冲信号与实际要显示值之间有一定的对应关系,经过软件编程显示所需要的值。显示子程序是将数据处理的结果送显示器显示。系统软件总体流程图如图2.3所示。 初始化P2.5=1?计算里程显示里程不进行累加显示里程N开始图 2.3 软件总体流程图53 自行车的里程表硬件电路设计3.1 概述自行车的里程表的硬件电路设计是基础部分,它包括信号的捕获、放大、整形,单片机的计算处理,数码管的实时显示和单片机外围基本电路的设计,两大主要器件就是传感器和单片机。传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。磁传感器是一种将磁学量信号转变为电信号的器件或装置。随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。作为输入信号,这就给磁传感器的快速发展提供了机遇,形成了磁传感器的产业。其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作。单片机是本次设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能。3.2 传感器及其测量系统本次设计信号的捕获采用的是霍尔传感器。霍尔器件具有许多优点,它们的结构牢固、体积小、重量轻、寿命长、安装方便、功耗小、频率高(可达1MHz)、耐震动、不怕灰尘、油污、水汽及烟雾等的污染或腐蚀。霍尔线性器件的精度高、线性度好;霍尔开关器件无触点、无磨损、输出波形清晰、无抖动、无回跳、位置重复精度高。取用各种补偿和保护措施的霍尔器件工作温度范围宽,可达55150。按照霍尔器件的功能可将它们分为:霍尔线性器件和霍尔开关器件,前者输出模拟量,后者输出数字量。 按被检测对象的性质可将它们的应用分为:直接应用和间接应用。前者是直接检测出受检测对象本身的磁场或磁特性,后者是检测受检对象上人为设置的磁场,用这个磁场来作被检测的信息的载体。通过它,将许多非电、非磁的物理量例如力、力矩、位置、位移、速度、加速度、角度、角速度、转数、转速以及工作状态发生变化的时间等,转变成电量来进行检测和控制。 3.2.1 霍尔传感器的测量原理霍尔传感器是利用霍尔效应制成的一种磁敏传感器。在置于磁场中的导体或半导体通入电流I,若电流垂直磁场B,则在与磁场和电流都垂直的方向上会出现一个电势差Uh,这种现象称为霍尔效应。利用霍尔效应制成的元件称为霍尔元件。因为它具有结构简单、频率响应宽、灵敏度高、测量线性范围大、抗干扰能力强以及体积小、使用寿命长等一系列特点,因此被广泛应用于测量、自动控制及信息处理等领域。霍尔效应原理图如图3.1所示。图3.1 霍尔效应原理图3.2.2 集成开关型霍尔传感器OH1881集成霍尔开关由稳压器A、霍尔电势发生器(即硅霍尔片)B、差分放大器 C、施密特触发器D和OC门输出E五个基本部分组成,如图3.2(a)所示。(1)、(2)、(3)代表集成霍尔开关的三个引出端点。在电源端加电压Vcc,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差VH输出,该VH信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC门输出。当施加的磁场达到工作点时,触发器输出高电压(相对于地电位),使三极管导通,此时OC门输出端输出低电压,通常称这种状态为开 。当施加的磁场达到释放点时,触发器输出低电压,三极管截止,使OC门输出高电压,这种状态为关 。这样两次电压变换,使霍尔开关完成了一次开关动作。工作点与释放点的差值一定,此差值称为磁滞,在此差值内,V0保持不变,因而使开关输出稳定可靠,这也就是集电成霍尔开关传感器优良特性之一。传感器主要特性是它的输出特性,即输入磁感应强度B与输出电压V0之间的关系。OH1881集成霍尔开关是单稳态型,由测量数据作出的输出特性曲线如图 3.2(b)所示。测量时,在1、2两端加5V直流电压,在输出端3与1之间接一个1kW的负载电阻。图3.2 集成开关型霍尔传感器3.3 单片机的原理及应用3.3.1 单片机原理简介单片机是指集成在一个芯片上的微型计算机,也就是把组成微型计算机的各种功能部件,包括CPU(Central Processing Unit)、随机存储器RAM(Random Access Memory)、只读存储器ROM(Read-only Memory)、基本输入/输出(Input/Output)接口电路。定时器/计数器等部件都制作在一块集成芯片上,构成一个完整的微型计算机从而实现微型计算机的基本功能。单片机内部结构示意图如图3.4所示。 定时/计数器中断系统 MSP430存储器并行I/O口串口I/O口TXDTXDRXDTINTP0-P1图3.4 单片机内部结构示意图1.中央处理器(CPU)中央处理器是单片机最核心的部分,主要完成运算和控制功能。2.内部存储器内部存储器包括内部数据存储器(内部RAM)和内部程序存储器。存储器是由大量的寄存器所组成,其中每一个寄存器就称为一个存储单元。3.定时/计数器单片机的定时器和计数器是同一结构,只是计数器记录的是单片机外部发生的事件,由单片机的外部电路提供计数信号;而定时器是由单片机内部提供一个非常稳定的计数信号。4.中断系统中断系统在计算机中起着十分重要的作用,是现代计算机系统中广泛采用的一种实时控制技术,能对突发事件进行及时处理,从而大大提高系统的实时性能。5.串行I/O接口串行I/O口的数据各位按顺序传输,其特点是需要一对传输线,成本低;但速度慢,效率低,适合静态显示。6.并行I/O接口并行I/O接口的数据所有位同时传送。其特点是传输速度快,效率高;但传送多少位就需要多少根传输线,因此传送成本高,适合动态显示。3.3.2 单片机的引脚功能介绍 MSP430是片内置16位中央处理器(CPU)和Flash存储单元,功能强大,适合于许多较为复杂控制场合应用。 RST:复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效,用以完成单片机的复位初始化操作。XTALl和XTAL2:外接晶体引线端。当使用芯片内部时钟时,此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。VSS:地线。 VCC:+3.3V电源。 3.3.3 单片机中断系统介绍中断是指当计算机执行正常程序时,系统中出现某些急需处理的事件,CPU暂时中止当前的程序,转去执行服务程序,以对发生的更紧迫的事件进行处理,待处理结束后,CPU自动返回原来的程序执行。由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求。 中断:中断装置和中断处理程序统称为中断系统。中断系统是计算机的重要组成部分。实时控制、故障自动处理、计算机与外围设备间的数据传送往往采用中断系统。中断系统的应用大大提高了计算机效率。中断响应和中断返回:当CPU收到中断请求后,能根据具体情况决定是否响应中断,如果CPU没有更急、更重要的工作,则在执行完当前指令后响应这一中断请求。CPU中断响应过程如下:首先,将断点处的PC值(即下一条应执行指令的地址)推入堆栈保留下来,这称为保护断点,由硬件自动执行。然后,将有关的寄存器内容和标志位状态推入堆栈保留下来,这称为保护现场,由用户自己编程完成。保护断点和现场后即可执行中断服务程序,执行完毕,CPU由中断服务程序返回主程序,中断返回过程如下:首先恢复原保留寄存器的内容和标志位的状态,这称为恢复现场,由用户编程完成。中断优先级通常,系统中有多个中断源,计算机给每个中断源规定了优先级别,称为优先权。当有多个中断源同时发出中断请求时,但中断系统只能按一定的次序来响应和处理。可最先被响应的中断具有最高优先权,按优先级别顺序进行处理。这样,当多个中断源同时发出中断请求时,优先权高的中断能先被响应,只有优先权高的中断处理结束后才能响应优先权低的中断。中断嵌套当CPU响应某一中断时,如果在中断服务子程序中设置了GIE位,此时将发生中断嵌套。当中断嵌套杯激活时,任何正在执行中断服务子程序的中断将会被打断,无论它的中断优先级如何。中断服务函数MSP430C语言书写规则:#pragma vector= *_VECTOR_interupt void 函数名 (void) /*do something*/解释:#pragma vector = 这一句用来设置中断向量*_VECTOR代表中断向量值,包含上表中断向量项中的所有定义。_interupt关键字,用于修饰中断服务函数,即,所有的中断服务函数必须拥有这个关键字的修饰。问题:interrupt和_interrupt的区别。中断服务函数返回类型必须是void,即没有函数返回值,同时函数参数也必须是void,即没有函数参数。注意:同一中断只能拥有一个中断服务函数。在中断服务函数结束之前,要对中断标志进行复位。如果在中断服务子程序中设置了GIE位,此时将发生中断嵌套。详见中断嵌套。中断的反应时间为6个机器周期,中断返回需要5个机器周期。中断详细逻辑见TI文档。Px口中断是8位共用一个中断向量,所以中断服务函数需要主动查询具体哪个端3.4 显示电路的设计 在正常情况下,通过液晶显示当前路程值。 其硬件和连线显示图如下图: 附录:#include /引用头文件#define uchar unsigned char#define uint unsigned int#include#include/uchar String1= Num: ;long int count=0;long int millisecond;long int second;long int minute;long int hour;#pragma vector=PORT2_VECTOR_interrupt void PORT2(void)P2IFG&=0x00; count+; millisecond=count%50; if(millisecond50) millisecond=0; second=(count/50)%60; if(second59) second=0; minute=(count/3000)%60; if(minute59) minute=0; hour=(count/180000)%24; if(hour23) hour=0;void delay(volatile long unsigned int time) while(time-); /延时子程序void WriteCommandLcd(unsigned char wdata)/向1602液晶写入命令子程序; P2OUT&=0x01;/RS清零,代表命令; P2OUT&=0x02;/RW清零; P2OUT&=0x04;/使能E清零; delay(100); /短暂延时,代替检测忙状态 P2OUT|= 0x04;/使能E置1; P1OUT=wdata;/送出命令或数据 delay(100);/短暂延时,代替检测忙状态 P2OUT&=0x04;/使能E清零,下降沿将命令或数据送入1602;void WriteDataLcd(unsigned char wdata)/向1602液晶写入数据子程序; P2OUT|= 0x01;/RS置1,代表数据; P2OUT&=0x02;/RW清零; P2OUT&=0x04;/使能E清零; delay(100); /短暂延时,代替检测忙状态 P2OUT|= 0x04;/使能E置1; P1OUT=wdata;/送出命令或数据 delay(100);/短暂延时,代替检测忙状态 P2OUT&=0x04;/使能E清零,下降沿将命令或数据送入1602;/LCD初始化void lcd_init(void) delay(1000); WriteCommandLcd(0x38);/显示模式设置,设置为16X2显示,5X7点阵,8位数据接口 delay(500); WriteCommandLcd(0x01); /显示清屏 WriteCommandLcd(0x0c); /开显示,关闭光标,当然光标也就不能显示了;(1) /WriteCommandLcd(0x0e); /开显示,显示光标,但是光标不闪烁;(2) /WriteCommandLcd(0x0f); /开显示,显示光标,光标闪烁;(3) WriteCommandLcd(0x06); /读写操作时地址自动加1int main(void) WDTCTL = WDTPW + WDTHOLD; / 关闭看门狗复位 /while(1) P1DIR = 0xff;/设置P1为输出状态 P2DIR = 0xcf;/设置P2为输出状态 lcd_init(); /初始化子程序; P2IFG&=0x20; /WriteCommandLcd(0x80+0x40);/从第一行第一个位置开始显示数据,第一行第一个位置的地址是80H; P2IE|=0X20;P2IFG&=0x00; P2IES|=0X20;_BIS_SR(GIE);while(1) P2OUT|=0X08; WriteCommandLcd(0x80+0x40);/从第一行第一个位置开始显示数据,第一行第一个位置的地址是80H; / WriteDataLcd(String1); if(hour10) WriteDataLcd(0x30+0); WriteDataLc
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河南省驻马店市汝南县双语学校、清华园学校2025-2026 学年九年级上学期1月期末考试道德与法治试卷(含答案)
- 甘肃省酒泉市2025-2026学年高二(上)期末物理试卷(含答案)
- 湖北省恩施市2025-2026学年七年级上学期历史期末考试题卷(含答案)
- 文秘考试试题及答案
- 数控专业实操考试题及答案
- 生理药理学试题及答案
- 《GAT 1031-2012泄漏电缆入侵探测装置通 用技术要求》专题研究报告
- 2026 年初中英语《语态辨析》专题练习与答案 (100 题)
- 2026年深圳中考语文真题变式训练试卷(附答案可下载)
- 2026年深圳中考英语素养培优强化试卷(附答案可下载)
- TCECS《智慧工地数字化管理平台通则》
- 车辆检查评定管理制度
- 质量控制计划表CP
- 足球课教学设计骨干培训
- 生物-四川省巴中市普通高中2022级(2025届)高三下学期“一诊”考试(巴中一诊)试题和答案
- 马口铁印铁制罐项目可行性研究报告
- 22G101三维彩色立体图集
- GB/T 5578-2024固定式发电用汽轮机规范
- 《空气源热泵供暖工程技术规程》
- 河北省唐山市2023-2024学年高一上学期1月期末考试化学试题(含答案解析)
- 附件5:安全爬梯连墙件计算书
评论
0/150
提交评论