单片机课程设计自行车里程计速度计 下载本文

内容发布更新时间 : 2024/10/14 11:14:22星期一 下面是文章的全部内容请认真阅读。

一、 概述

1.1设计目的

本设计采用AT89C52单片机作控制,利用霍尔元件等器件设计一个可用LED数码管显示当前自行车行驶的距离及速度并具有超速报警功能的自行车里程/速度表,使其作为自行车的一种辅助工具,让自行车的功用更强大,给人们带来更多的方便。 1.2课题简介

自行车被发明及使用到现在已有两百多年的历史,在这两百年间人类在不断的尝试与研发过程中,自行车发展的目的也从最早的代步工具转换成休闲娱乐的用途,随着生活水平的提高,人们希望自行车的功能更强大,而里程计/速度计正满足了这个需求。现在先进的里程/速度计不仅能显示实时的速度和里程,还显示时间,甚至具有测量骑车人的心跳、显示骑车人热量消耗等功能。

由于时间有限,本设计完成的功能减为两个,即测量并通过LED数码管进行动态显示当前的速度和里程,并在超速时发出警报。

要求达到的各项指标及实现方法如下: 1. 利用霍尔传感器产生里程数的脉冲信号。 2. 对脉冲信号进行计数。

实现:利用单片机自带的计数器T1对霍尔传感器脉冲信号进行计数。 3. 对数据进行处理,要求用LED显示里程总数和即时速度。 实现:利用软件编程,对数据进行处理得到需要的数值。

最终实现目标:自行车的速度里程表具有里程、速度测试与显示功能,采用单片机作控制,显示

电路可显示里程及速度。 二、系统设计 2.1总体设计方案

采用AT89C52芯片,用霍尔元件将车轮的转速转换成电脉冲,经过处理后送入单片机。里程及速度的测量,是经过AT89C52的定时/计数器测出总的脉冲数和每转一圈的时间,再经过单片机的计算得出,计算结果通过LED显示器显示出来。

传感器是获取自然或生产领域中信息的关键器件,是现代信息系统和各种设备不可缺少的信息采集工具。磁传感器是一种将磁学量信号转变为电信号的器件或装置。随着信息产业、工业自动化、医疗仪器等的飞速发展和计算机应用的普及,需要大量的传感器将被测或被控的非电信号转换成可与计算机兼容的电信号。作为输入信号,这就给磁传感器的快速发展提供了机遇,形成了磁传感器的产业。其中最具代表的磁传感器就是霍尔传感器,在自动检测系统中,利用霍尔传感器测转数是一种最基本的测量工作。

单片机是该设计的核心部件,它是信号从采集到输出的桥梁,而且包括计算、定时、信息处理等功能。 当轮子每转一圈,通过开关型霍尔元件传感器采集到一个脉冲信号,并从引脚12即P3.2外部中断0

1

端输入,传感器每获取一个脉冲信号即对系统提供一次计数中断。每次中断代表车轮转动一圈,中断数n、轮圈的周长为L,它们的乘积为里程值。计数器T1计算每转一圈所用的时间t,就可以计算出即时速度v。当里程键按下时,里程指示灯亮,LED切换显示当前里程,与当速度键按下时,速度指示灯亮,LED切换显示当前速度,若自行车超速,系统发出报警信号,指示灯闪烁。里程数据自动记忆,也可用于电动自行车、摩托车、汽车等机动车仪表上。

设计包括硬件、软件两部分,硬件电路包括AT89C52单片机的外围电路以及LED显示电路等,这里对硬件部分只做简单介绍,主要阐述的是软件部分的设计,包括数据初始化程序的设计、主程序的设计、处理子程序的设计、显示子程序的设计;最后针对仿真过程遇到的问题进行了具体说明与分析,对本次设计进行总结。 2.2硬件部分介绍 2.2.1 AT89C52芯片简介

AT89C52是一种带4K字节闪存可编程可擦除的只读存储器即为

(FPEROM—Flash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。

管脚说明:

VCC:供电电压,+5V。 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”时,其管脚被内部上拉电阻拉高,且作为输入。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。P3口也可作为AT89C52的一些特殊功能口,如下表所示:

P3.0 RXD(串行输入口) P3.1 TXD(串行输出口) P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1) P3.4 T0(记时器0外部输入) P3.5 T1(记时器1外部输入) P3.6 /WR(外部数据存储器写选通)

P3.7 /RD(外部数据存储器读选通)

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程

2

期间,此引脚用于输入编程脉冲。

PSEN*:外部程序存储器的选通信号。在由外部程序存储器取值期间,每个机器周期两次PSEN*有效。

但在访问外部数据存储器时,这两次有效的PSEN*信号将不出现。 2.2.2 硬件设计

自行车里程计/速度计电路原理图见图1。

VCCC333pC233pX1R151.8kR22R21R20R19R18R17R161.8k1.8k1.8k1.8k1.8k1.8k1.8kVCC1.2MHzC110uR6D1R1LED1k330SW1SW-SPSTU1R58.2k18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617Q59RSTVCC2N1711R3Q64.7kD2R21kR44.7k2N1711293031PSENALEEAQ1Q22N2905Q32N2905Q42N2905LEDSW2SW-SPSTSW3SW-SPSTSW4SW-SPSTSW512345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R14R134k74k7R12R114k74k7R10R94k74k7R84k7R74k7U2321E2E1E0WCSDASCL756SW-SPSTQ7R232N29054k7SW7SW-SPSTVCCM24C01R26R258R23R3SW61SW-SPSTU3CLKQ1Q2Q3Q4Q5Q6Q7121196543Q82N1711LS1D3R24330SPEAKERLED2MR4024 VCCC333pC233pX1R151.8kR22R21R20R19R18R17R161.8k1.8k1.8k1.8k1.8k1.8k1.8kVCC1.2MHzC110uR6D1R1LED1k330SW1SW-SPSTU1R58.2k18XTAL219XTAL1P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15P3.0/RXDP3.1/TXDP3.2/INT0P3.3/INT1P3.4/T0P3.5/T1P3.6/WRP3.7/RD393837363534333221222324252627281011121314151617Q59RSTVCC2N1711R3Q64.7kD2R21kR44.7k2N1711293031PSENALEEAQ1Q22N2905Q32N2905Q42N2905LEDSW2SW-SPSTSW3SW-SPSTSW4SW-SPSTSW512345678P1.0P1.1P1.2P1.3P1.4P1.5P1.6P1.7AT89C51R14R134k74k7R12R114k74k7R10R94k74k7R84k7R74k7U2321E2E1E0WCSDASCL756SW-SPSTQ7R232N29054k7SW7SW-SPSTVCCM24C01R26R258R23R3SW61SW-SPSTU3CLKQ1Q2Q3Q4Q5Q6Q7121196543Q82N1711LS1D3R24330SPEAKERLED2MR4024 图1 电路原理图

3