单片机的自行车速度里程表的设计毕业论文
目录
引 言 1
一、 课题任务设计 1
(一) 课题设计要求 1
(二) 课题设计方案 1
二、 设计系统硬件平台 1
(一) 总体设计方案 1
(二) 单片机最小系统 2
晶振电路 2
复位电路 2
STC89C52单片机 3
(四) 霍尔传感器的使用原理与应用 4
(五) DS1302时钟芯片 5
(六) 报警模块 5
三、 系统软件的流程 6
(一) 主程序流程图 6
(二) 显示流程图 6
(三) 速度处理流程图 7
四、 安装调试实物 7
五、 总结 8
参考文献 9
附录一 10
引 言
自行车为了能给人们带来更多的方便。为了满足这个需求自行车车速里程表就此诞生,从原本单一的里程显示如今发展到速度、时间也能同时显示。为了能够自动地显示当前自行车行驶的里程及速度,同时具备体积小、操作简单的特点。
本课题利用霍尔传感元件、AT89C52单片机等部件设计一个自行车速度里程表,其中可通过1602LCD液晶显示里程和速度。硬件和软件两部分介绍。
本课题首先进行对方案的论证,包括硬件部分为STC89C52单片机的外围电路、液晶显示电路等和软件部分为芯片初始化、定时中断子程序、显示子程序等,程序部分采用C语言编写的设计。首先详细介了绍硬件部分。之后简要表述了软件设计思路。
一、 课题任务设计
(一) 课题设计要求
(1)设计一款自行车里程表,此里 *好棒文|www.hbsrm.com +Q: 3_5_1_9_1_6_0_7_2
程表可是用于全部自行车类型,然后能通过LED显示里程、速度等相关信息。
(2)了解,熟练运用其基本工作原理。
(二) 课题设计方案
采用STC89C52单片机来实现:使用霍尔传感器为对车轮速度脉冲信号进行测量,然后将数据传送到数字脉冲信号的核心单片机处理。与此同时,并附加上报警功能,以便在车速达到蜂值后,蜂鸣器会发出“嘀嘀嘀”的报警声,用来提示需要减速。
二、 设计系统硬件平台
(一) 总体设计方案
设计任务:处理核心为AT89C52单片机,首先由霍尔传感器收集车轮转速并转换成车轮的转数电脉冲,之后霍尔传感器再将转数电脉冲转换为数字信号,最后将信号输入AT89C52单片机。
总体思路:设自行车车轮轴的周长为L,在车轮轴外侧装上x个永磁铁,这时可计算出里程值的最大误差设为L/x。通过分析,当x=1时,车轮每转一圈,开关型霍尔传感器就采集到一个脉冲信号,并从引脚P3.2中断0端输入,每当车轮转一圈传感器获便获取一个脉冲信号,这时系统提供一次计数中断。每次中断则代表一圈,中断数n与轮轴的周长L的乘积就为里程值。计数器T1计算每转一圈所用的时间为“time”,就可以计算出即时速度“speed”。若自行车车速超过限定速度,系统发出报警信号指令,蜂鸣器发出警报。
图1 系统框图
(二) 单片机最小系统
晶振电路
STC89C52系列是1T的8051单片机,STC89C52系统时钟兼容传统8051。此系列单片机有两个时钟源,第一个为内部R/C振荡时钟,第二个为外部晶体时钟。
晶振电路是由高增益反相放大器、晶振和两个20PF的电容构成的振荡电路。高增益反相放大器有两个端口,输入端为XTAL,输出端为XTAL2。
图2 晶振电路
复位电路
单片机系统的复位方式有:手动按钮复位和上电复位。
手动复位就是按下SPOWER1后,电容C1右侧电短接,变成低电位,系统手动复位。
上电复位是因为电容两端电压不能突变,当VCC通电瞬间,电容C1两端电压为0,两端电压相同,就是电容右侧电位上电瞬间是低电位,系统上电复位。
图3 复位电路
STC89C52单片机
图4 STC89C52单片机
VSS:接地。
VCC:接5V正电源。
P0.0~7:P0口是一组8位漏极开路型双向I/O口,也是地址/数据总线复用口。
P1.0~7:P1口是一个带内部上拉电阻的8位双向I/O口。
P2.0~7:P2口是一个带内部上拉电阻的8位双向I/O口。
P3.0~7:P3口是一个带内部上拉电阻的8位双向I/O口。
XTAL1:单片机上为19脚,与18脚一样接微调电容以及外部晶体一端;在单片机内部它作为振荡电路中反相放大器的输入端。如果需要接入外部时钟时,则该引脚必须接地。
XTAL2:单片机上为18脚,链接微调电容的另一端以及外部晶体。如果需要接入外部时钟电路,则该引脚用于外部时钟脉冲的输入。
(三) LED显示模块
1602LCD分为两种:带背光和不带背光,不带背光的稍薄,但在应用中两种并无差别。基础控制器绝大部分为HD44780。
图5 液晶显示模块图
液晶引脚与单片机连接:
脚1:接地。
脚2:接5V正电源。
脚3:接2K的电位器。
脚4:寄存器选择。
脚5:读写信号端。
脚6:E端为使能端,当高电平跳变为低电平时液晶模块执行命令。
脚7~脚14:为8位双向数据线接单片机P0口。
脚15:接5V正电源。
脚16:接地。
(四) 霍尔传感器的使用原理与应用
图6 霍尔传感器
霍尔传感器是一种磁敏传感器,是磁电效应的一种,用于检测电路中磁场的变化。本设计采用的为开关型霍尔传感器,主要用于检测转速、转数、风速、流速等。
(五) DS1302时钟芯片
图7 时钟芯片
本课题时钟芯片采用的为DS1302,工作电压为2.5V~5.5V。在DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。?
DS1302与STC89C52单片机的连接线有三条线:RST引脚。SCLK串行时钟输入引脚。I/O数据输入输出引脚,具有三态功能。Vcc1为工作电源引脚、Vcc2作为备用电源引脚,X1、X2为晶振接入引脚,为芯片提供计时脉冲。
(六) 报警模块
为了能够让人安全驾驶,以免造成对他人与自身的危害,本课题附加设计了报警电路,在超出预定速度时会发出警报,用来提示超速。
其中Q1的2脚连接单片机的P3.1口。
图8 报警模块
三、 系统软件的流程
(一) 主程序流程图
引 言 1
一、 课题任务设计 1
(一) 课题设计要求 1
(二) 课题设计方案 1
二、 设计系统硬件平台 1
(一) 总体设计方案 1
(二) 单片机最小系统 2
晶振电路 2
复位电路 2
STC89C52单片机 3
(四) 霍尔传感器的使用原理与应用 4
(五) DS1302时钟芯片 5
(六) 报警模块 5
三、 系统软件的流程 6
(一) 主程序流程图 6
(二) 显示流程图 6
(三) 速度处理流程图 7
四、 安装调试实物 7
五、 总结 8
参考文献 9
附录一 10
引 言
自行车为了能给人们带来更多的方便。为了满足这个需求自行车车速里程表就此诞生,从原本单一的里程显示如今发展到速度、时间也能同时显示。为了能够自动地显示当前自行车行驶的里程及速度,同时具备体积小、操作简单的特点。
本课题利用霍尔传感元件、AT89C52单片机等部件设计一个自行车速度里程表,其中可通过1602LCD液晶显示里程和速度。硬件和软件两部分介绍。
本课题首先进行对方案的论证,包括硬件部分为STC89C52单片机的外围电路、液晶显示电路等和软件部分为芯片初始化、定时中断子程序、显示子程序等,程序部分采用C语言编写的设计。首先详细介了绍硬件部分。之后简要表述了软件设计思路。
一、 课题任务设计
(一) 课题设计要求
(1)设计一款自行车里程表,此里 *好棒文|www.hbsrm.com +Q: 3_5_1_9_1_6_0_7_2
程表可是用于全部自行车类型,然后能通过LED显示里程、速度等相关信息。
(2)了解,熟练运用其基本工作原理。
(二) 课题设计方案
采用STC89C52单片机来实现:使用霍尔传感器为对车轮速度脉冲信号进行测量,然后将数据传送到数字脉冲信号的核心单片机处理。与此同时,并附加上报警功能,以便在车速达到蜂值后,蜂鸣器会发出“嘀嘀嘀”的报警声,用来提示需要减速。
二、 设计系统硬件平台
(一) 总体设计方案
设计任务:处理核心为AT89C52单片机,首先由霍尔传感器收集车轮转速并转换成车轮的转数电脉冲,之后霍尔传感器再将转数电脉冲转换为数字信号,最后将信号输入AT89C52单片机。
总体思路:设自行车车轮轴的周长为L,在车轮轴外侧装上x个永磁铁,这时可计算出里程值的最大误差设为L/x。通过分析,当x=1时,车轮每转一圈,开关型霍尔传感器就采集到一个脉冲信号,并从引脚P3.2中断0端输入,每当车轮转一圈传感器获便获取一个脉冲信号,这时系统提供一次计数中断。每次中断则代表一圈,中断数n与轮轴的周长L的乘积就为里程值。计数器T1计算每转一圈所用的时间为“time”,就可以计算出即时速度“speed”。若自行车车速超过限定速度,系统发出报警信号指令,蜂鸣器发出警报。
图1 系统框图
(二) 单片机最小系统
晶振电路
STC89C52系列是1T的8051单片机,STC89C52系统时钟兼容传统8051。此系列单片机有两个时钟源,第一个为内部R/C振荡时钟,第二个为外部晶体时钟。
晶振电路是由高增益反相放大器、晶振和两个20PF的电容构成的振荡电路。高增益反相放大器有两个端口,输入端为XTAL,输出端为XTAL2。
图2 晶振电路
复位电路
单片机系统的复位方式有:手动按钮复位和上电复位。
手动复位就是按下SPOWER1后,电容C1右侧电短接,变成低电位,系统手动复位。
上电复位是因为电容两端电压不能突变,当VCC通电瞬间,电容C1两端电压为0,两端电压相同,就是电容右侧电位上电瞬间是低电位,系统上电复位。
图3 复位电路
STC89C52单片机
图4 STC89C52单片机
VSS:接地。
VCC:接5V正电源。
P0.0~7:P0口是一组8位漏极开路型双向I/O口,也是地址/数据总线复用口。
P1.0~7:P1口是一个带内部上拉电阻的8位双向I/O口。
P2.0~7:P2口是一个带内部上拉电阻的8位双向I/O口。
P3.0~7:P3口是一个带内部上拉电阻的8位双向I/O口。
XTAL1:单片机上为19脚,与18脚一样接微调电容以及外部晶体一端;在单片机内部它作为振荡电路中反相放大器的输入端。如果需要接入外部时钟时,则该引脚必须接地。
XTAL2:单片机上为18脚,链接微调电容的另一端以及外部晶体。如果需要接入外部时钟电路,则该引脚用于外部时钟脉冲的输入。
(三) LED显示模块
1602LCD分为两种:带背光和不带背光,不带背光的稍薄,但在应用中两种并无差别。基础控制器绝大部分为HD44780。
图5 液晶显示模块图
液晶引脚与单片机连接:
脚1:接地。
脚2:接5V正电源。
脚3:接2K的电位器。
脚4:寄存器选择。
脚5:读写信号端。
脚6:E端为使能端,当高电平跳变为低电平时液晶模块执行命令。
脚7~脚14:为8位双向数据线接单片机P0口。
脚15:接5V正电源。
脚16:接地。
(四) 霍尔传感器的使用原理与应用
图6 霍尔传感器
霍尔传感器是一种磁敏传感器,是磁电效应的一种,用于检测电路中磁场的变化。本设计采用的为开关型霍尔传感器,主要用于检测转速、转数、风速、流速等。
(五) DS1302时钟芯片
图7 时钟芯片
本课题时钟芯片采用的为DS1302,工作电压为2.5V~5.5V。在DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。?
DS1302与STC89C52单片机的连接线有三条线:RST引脚。SCLK串行时钟输入引脚。I/O数据输入输出引脚,具有三态功能。Vcc1为工作电源引脚、Vcc2作为备用电源引脚,X1、X2为晶振接入引脚,为芯片提供计时脉冲。
(六) 报警模块
为了能够让人安全驾驶,以免造成对他人与自身的危害,本课题附加设计了报警电路,在超出预定速度时会发出警报,用来提示超速。
其中Q1的2脚连接单片机的P3.1口。
图8 报警模块
三、 系统软件的流程
(一) 主程序流程图
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/txgc/1874.html