1、 长沙学院毕业设计(论文) 长沙学院 CHANGSHA UNIVERSITY毕业设计(论文)资料设计(论文)题目: 基于单片机的超速报警器的 设计 系部: 电子与通信工程 专 业: 通信工程 学 生 姓 名: 班 级:10通信1 学号 2010043127 指导教师姓名: 职称 讲师 最终评定成绩 长沙学院教务处 二一一年二月制目 录第一部分 设计说明书一、设计说明书第二部分 过程管理资料一、 毕业设计(论文)课题任务书二、 本科毕业设计(论文)开题报告三、 本科毕业设计(论文)中期报告四、 毕业设计(论文)指导教师评阅表五、 毕业设计(论文)评阅教师评阅表六、 毕业设计(论文)答辩评审表20
2、 14 届本科生毕业设计(论文)资料第一部分 设计说明书摘 要 随着经济的不断增长、城市化速度的加快,汽车产业的发展非常迅速,汽车已成为了人们出行和城市正常工作的主要工具,然而汽车给我们的生活带来方便的同时,也产生了一系列社会问题。因汽车超速造成的交通事故而导致的伤亡人数占了意外伤亡人数的比重相当大,给社会造成了巨大的经济损失。所以提高汽车的制动、超速报警等性能是非常必要的。本文介绍了一种基于AT89C52 单片机的汽车超速报警系统。该系统由测速模块、控制显示模块、报警模块和最高速调整模块组成。运用了光电传感器测速、LED 显示等技术。设计了以AT89C52 单片机为核心的汽车超速报警系统的硬
3、件电路和软件算法。本设计是在以电机带动转轮模拟车轮转动的条件下实现的。模拟实验表明该方案可行,能有效提高汽车的制动、超速报警等性能,且系统硬件结构简单,软件快速高效,采样速度快,抗干扰能力较好,经济成本小等优点,有一定的应用价值。关键词:车速,光电传感器,AT89C52 单片机,报警ABSTRACT Keywords:目 录摘 要IABSTRACTII第1章 绪论11.1研究背景11.2本课题设计的发展现状21.3研究内容2第2章 车速测量原理及方案32.1频率量的测量方法32.2 速度的实现4第3章 系统总体设计63.1系统总体设计方案63.2 测速传感器的选用63.2.1磁电式传感器63.
4、2.2 霍尔传感器73.2.3 光电式传感器83.3 单片机选型83.3.1 单片机简介83.3.2 本设计对单片机的选用93.4 显示器和报警器的设计93.4.1 LCD显示结构及原理103.4.2 报警器10第4章 硬件电路设计114.1主控模块电路的设计114.2 光电传感器电路的设计114.3报警电路的设计124.4 显示电路的设计124.5 按键电路的设计13第5章 软件设计145.1主程序的设计145.2 脉冲计数程序的设计175.3 显示模块程序的设计195.4 按键中断子程序设计205.5 报警模块程序设计21结 论23参考文献24附 录25致 谢33VI 长沙学院毕业设计(论
5、文) 第1章 绪论1.1研究背景 随着我国市场经济的发展,人民生活水平的不断提高,私家车已经走入千家万户,成为主要的交通工具。然而,私家车主由于不是专业的司机,熟练程度、速度的感觉不是特别好,车速往往根据偏好,随意提速、超速行驶,当汽车处于超速行驶状态下,其稳定性与安全性大大降低,一旦出现紧急情况,往往会导致车毁人亡的重大交通事故发生。当今的中国已经是一个汽车大国,伴随着国内机动车数量的迅速飙升。随着社会经济的发展,我国机动车的保有量不断增加,道路交通事故频繁发生。根据我国2003年交通事故统计的数据发现,2003年全国共发生道路交通事故567753起,造成99217人死亡、451810人受伤
6、,直接财产损失27.7亿元。仔细对比其中的数据我们发现车辆超速行驶造成交通事故的比例高达16%左右,共造成约19741人死亡,88180多人受伤,在多种交通事故原因中仅次于无照驾驶所造成的危害1。20l0年上半年全国道路交通事故情况,1至6月份,按照道路交通事故同比口径统计,全国共发生道路交通事故99282起,造成27270人死亡、l16982人受伤,直接财产损失4.1亿元。同比分别下降9.3、12、10.6和5.3,在交通事故中损失的经济财产之大让人膛目结舌。其中,发生一次死亡10人以上特大道路交通事故l5起,同比增加3起。全国共发生适用简易程序处理的道路交通事故1694l53起,同比上升3
7、1.7。更让人吃惊的是超速超载所导致的交通事故占有比较大的比例。而现实生活中,绝大多数的驾驶员并不是出于主观意愿驾驶超速,而是在驾驶中对速度问题产生忽略而超速甚至酿成大祸。通过对多次因超速发生的车祸进行分析和研究,得出超速对驾驶员的影响可由以下五点原因决定:1、驾驶员的空间认知能力减退;2、影响驾驶员全面地观察处理情况;3、影响驾驶员对其他交通参与者速度的判断;4、影响驾驶员对车外事物判断的准确性;5、驾驶员极易疲劳。所以本产品就是使驾驶员起到重视速度问题,并且及时监督提醒作用驾驶员不要超速。而且在行驶过程中,对速度的要求也是不同的,比如在城区环路一般限速到8迈,而在高速公路上行驶,小型轿车一
8、般车速要达到120迈,所以本设计产品不能只拥有单一的速度最高额度,要能实现根据驾驶者的自身的行驶背景对车速的最大值进行调控。由此,我觉得开发一个超速报警系统是很有必要的,对于驾驶员及其家人的生命财产安全有重大意义,可以降低交通事故发生率。课题:基于单片机的汽车超速报警系统的设计与研究,正是在此背景下提出的,故而有很大的现实意义。1.2本课题设计的发展现状70 年代前,电子仪表在汽车上应用还比较少,机械仪表作为汽车仪表的主体,随着集成电路的快速发展,电子仪表开始在汽车上得到广泛应用。从70 年代末期至90 年代中期,汽车电子技术开始迅速发展并趋向于成熟,逐渐形成了比较系统的规模。进入21世纪至今
9、,汽车电子作为工程技术己经成熟,已形成汽车电子技术群,汽车往往会被装上若干个自动控制系统,不断融入当今各学科和各领域的新技术、新材料成果,向功能多元化、机电一体化、系统工程化、高度集成化方向发展。汽车自动化、智能化程度已相当的高,汽车性能也得到极大的提高2。现阶段的汽车测速报警装置尽管相当先进,但是受传感器技术、外界干扰和动态测量等因素的影响,精准度还需要进一步提高。随着传感器的不断升级,微处理器的智能程度的不断提高,其他高新技术的发展,误差修正技术的不断发展,相信不久的将来,汽车会达朝着更高的智能化发展。未来的汽车不仅是在现有的速度测量等方便更加精准,而且通过一系列高端传感器和微处理器组成若
10、干个的监测、控制系统,未来的汽车将能根据环境的特殊紧急要求自动及时改变状态。例如,发现危险时的自动急刹车,超速报警后司机无反应时自动减速,甚至发展到根据要求自行调整方向等,最终达到能根据预期设置在行驶中摆脱对人的依赖。1.3研究内容基于单片机的超速报警器,根据不同道路最高车速的限制不同,利用按键对最高速度进行初设,其中通过LED数码管与其驱动芯片实现显示,再利用速度传感器进行测速,最后通过单片机对实时速度与初设最高速度进行对比,如若超速,发出警报,警示驾驶者减速。根据系统的要求完成汽车超速报警器的硬件和软件设计。系统研究的主要内容包括:构架系统的整体结构;对速度传感器、驱动芯片、单片机等硬件进
11、行选定;完成各个硬件的设计;给出系统的软件设计,并作相关说明。第2章 车速测量原理及方案通过车速传感器输出与车速成正比的脉冲或者准脉冲信号,对传感器输出信号频率进行测量,然后通过处理、转换、计算,即可得出汽车速度。速度信号作为本系统的基量,能否精确测量速度对系统的精准和性能有着决定性的影响。所以测速方法的选择尤为关键。2.1频率量的测量方法频率的测量方法不仅会影响到测量精度,而且也会影响到整个系统的动态性能。常见的频率测量方法有频率法、周期法、混合测频法及频压转换法2。下面对这四种方法进行简介:2.1.1 频率法频率法又叫直接计数法,被测量信号的频率为f ,在某一选定时间闸门T内,对被测量的信
12、号脉冲进行计数,然后根据计数值M和闸门时间T求得所测信号的频率。频率法的特点是测量时间基本恒定,动态性能由闸门时间T决定,T越小,动态能越好。在T恒定的情况下,f 越大,误差就越小。用此方法,通过单片机的定时/计数器,在阀门时间(定时时间)里记录脉冲数,再通过转换即可得到被测信号频率。例如定时50毫秒,计数器读到的脉冲数乘以20就是被测信号的频率。这种方法的缺点就是在闸门时间T内捕捉到的信号可能会丢失,造成测量的主要误差。图2.1 频率法脉冲丢失原理图第一个脉冲的上升沿和最后一个脉冲的下降沿不在闸门时间T内,就造成了信号丢失。即测到的脉冲数少于实际的脉冲数,这就造成了误差。但是如果脉冲的频率很
13、高,丢失的脉冲数对测量结果影响就不大,误差相对较小。所以频率法只适合于测量高频信号。2.1.2周期法参考时钟脉冲的频率为f ,被测信号的周期为T,计数值为M,其原理是在被测信号的周期T内,对某一基准时钟脉冲进行计数,计数值除以时钟脉冲的频率便是被测信号周期T。在f 确定的情况下,被测信号的周期越大,测量结果的误差越小,被测信号的周期越小,测量结果误差就越大,所以此方法适合于测量低频信号而不适于测高频信号。图2.2 周期法原理图2.1.3 频率和周期混合法如果需要对汽车慢速行驶和快速行驶时的速度进行测量和显示,可综合频率法和周期法。即设定一个分界频率,高于分界频率用频率法,低于此频率用周期法。即
14、可相互弥补各自的缺陷。不过此方法相对复杂。对以上几种频率量的方法进行比较,可知频率和周期混合法是较完美的测量方法,但是此方法比较复杂,实现难度较大。本设计虽然对车速进行测量,但测量的目的是为了对其超速时报警,报警的速度范围一般为中高速,所以测速时着重考虑中高速的测量。尽管频率法在测量低频信号时误差较大,即测量低速行驶的汽车车速时误差较大,但是本系统不要求对汽车低速时报警。该方法可以满足汽车行驶时的中高速信号测量,可满足该设计的要求,故本设计选择频率法作为频率量测量方法。2.2 速度的实现向司机显示实时行驶的速度,是本设计的基本要求。不同的频率对应什么样的速度,怎样把频率转换成相应的速度,这都是
15、后面编程时算法的依据。故把测到的频率量转化成现成的速度量是本设计的重要工作。2.2.1 频率与车速的对应关系选用光电传感器时,传感器输出信号的频率量与车速成正比。以仿真模型为例子,转盘孔数为4,当定时器定时1s,所安装的光电传感器输出信号的脉冲数为100,可得转盘共转了25圈,所以转速为每秒25圈2 3。2.2.2 频率与车速的转换固定安装好传感器后,取100个速度差相同的速度点对传感器输出信号进行测频,标定好各速度点对应的频率后,进行直线拟合。拟合后的频率速度特性就作为编程时频率转换成速度的依据。第3章 系统总体设计3.1系统总体设计方案本课题的设计是基于单片机处理的小型应用系统。总体设计思
16、路为:利用车速传感器采集车速信号,对车速信号进行滤波处理,除去干扰信号,然后利用整形芯片对信号整形处理,转换为单片机能识别的脉冲信号,输入单片机。经单片机计算处理后显示实时速度,并在超过最高限定速度时报警,最高限定速度可以根据不同的路段通过按键设定。 速度传感器单片机微处理器显示器报警器按键设定报警阈值速度图3.1 系统总体框图3.2 测速传感器的选用在选用车速传感器时,要充分考虑传感器的工作环境,灵敏度,线性范围,频率响应特性,稳定性,抗干扰性能,耐用性,系统性能要求等。下面介绍几种常用的车速传感器3。3.2.1磁电式传感器磁电式传感器是将输入运动速度变换成感应电势输出的传感器,它不需要辅助
17、电源,直接把被测对象的机械能转换成比较容易测量的电信号,是用于测量转速比较理想的有源传感器。磁电式车速传感器就是一个模拟交流信号发生器,产生交变电流信号,通常由带两个接线柱的磁芯及线圈组成。下图为某型号磁电式传感器的结构图:图3.2 磁电式传感器磁阻式磁电传感器在汽车上的应用可以用来检测发动机转速和车轮转速,一般由传感头和齿圈组成, 而传感头主要由永磁体、磁极和感应线圈组成。当齿圈的齿隙与传感器的极轴端部相对时, 极轴端部与齿圈之间的空气间隙最大,磁阻也最大, 通过感应线圈的磁通量最小。而当齿圈的齿顶与传感器的极轴端部相对应时, 极轴端部与齿圈之间的空气隙最小, 磁阻也最小, 通过感应线圈的磁
18、通量最大。当齿圈随同车轮转动时, 齿圈的齿顶和齿隙就交替地与传感器极轴顶部相对, 传感器感应线圈周围的磁场随之发生强弱交替变化, 在感应线圈中就会感应出交变电动势, 齿圈的齿数为固定值,感应电动势的频率和转速成正比。3.2.2 霍尔传感器霍尔式传感器由传感头和齿圈组成,,其传感头由霍尔元件、永磁体和电子电路等组成,结构图如下:图3.3 霍尔传感器霍尔传感器是利用霍尔效应原理进行工作的,当在与磁场垂直的方向上加上一控制电流时, 则在与磁场垂直的方向上会产生霍尔电压,齿圈转动过程中, 使得通过霍尔元件的磁力线密度发生变化, 从而引起霍尔电压的变化,霍尔元件将输出一准正弦波电压,此信号由电子电路转换
19、成表中的脉冲电压。3.2.3 光电式传感器光电式传感器由开孔圆盘,光源,光敏元件及缝隙板等组成。开孔圆盘的输入轴与被测轴相连接光源发出的光通过开孔圆盘和缝隙板照射到光敏元件上被光敏元件所接收,将光信号转换成电信号输出。开孔圆盘旋转一周,光敏元件输出的电脉冲的个数等于圆盘的开孔数,因此,可通过测量光敏元件输出的脉冲频率,得知被测转速。图3.4 光电式传感器通过对上述各种传感器的简介,我们得知磁电式传感器输出信号的幅值随转速的变化而变化,抗电磁波干扰能力差。霍尔传感器安装使用不方便,而价格相对昂贵。光电式传感器价格低廉,安装使用方便,不与被测对象直接接触。所以本设计采用光电式传感器。3.3 单片机
20、选型单片机的选型应充分考虑性能,存储器,运行速度,I/O口,定时/计数器,串行口,模拟电路功能,工作电压、功耗,抗干扰性能、保密性等。3.3.1 单片机简介单片机全称单片微型计算机(Single Chip Microcomputer),是一种集成的电路芯片4,它采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上,构成了一个小而完善的面向控制的计算机系统。目前单片机已应用到我们生活的各个领域,如导弹的制导系统装置,
21、飞机上各种仪表的自动控制,计算机网络与通信技术,工业自动化过程的实时控制和数据处理,环境温度监测,水位监测,各种智能IC卡,豪华轿车的安全保障系统,以及程控玩具、电子宠物等等的一切电子设备,都离不开单片机。以单片机为核心的微型自动控制系统提高了自动化的程度,大大的方便了生产生活。3.3.2 本设计对单片机的选用本设计选用AT89C52单片机为中央处理器。图3.5 AT89C52引脚AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术
22、生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用5 6。主要功能特性:(1) 兼容MCS51指令系统(2) 8k可反复擦写(大于1000次)Flash ROM(3) 32个双向I/O口(4) 3个16位可编程定时/计数器中断(5) 3个16位可编程定时/计数器中断(6) 时钟频率0-24MHz(7) 2个串行中断,可编程UART串行通道(8) 2个外部中断源,共8个中断源(9) 2个读写中断口线,3级加密位(10)低功耗空闲和掉电模式,软件设置睡眠和唤醒功能(11)有PDIP、PQFP、TQFP及PLCC等几种封装
23、形式,以适应不同产品的需求3.4 显示器和报警器的设计显示器和报警器是该系统中人机信息交换的部分,是系统直接给司机提供信息的窗口,所以简捷,美观,良好的视觉效果及听觉效果非常必要。3.4.1 LCD显示结构及原理LCD1602与单片机接口方便,价格便宜,寿命长,对电压电流要求低且容易实现多路,常作为测量控制仪表中常用的输出显示设备。鉴于LCD 1602诸多优点,本设计选用LCD1602显示。图3.6 LCD1602实物图1602液晶也叫1602字符型液晶,3.3V或5V工作电压,对比度可调,内含复位电路,提供各种控制命令,如:清屏、字符闪烁、光标闪烁、显示移位等多种功能,有80字节显示数据存储
24、器DDRAM,内建有192个5X7点阵的字型的字符发生器CGROM,8个可由用户自定义的5X7的字符发生器CGRAM它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。它由若干个5*7或者5*11等点阵字符位组成,每个点阵字符位都可以显示一个字符,每位之间有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用7。满足本设计的显示要求。3.4.2 报警器蜂鸣喇叭报警器是常用的最简单的报警器,也可以利用指示灯来警示报警。如果条件允许,可用采用语音报警,不过语音报警相对复杂得多。图3.6 蜂鸣器实物图第4章 硬件电路设计4.1主控模块电路的设计主控模块是由AT89C52单片机组成的最小
25、应用系统,是系统的核心,控制着整个系统的正常运行。图4.1 AT89C52最小系统电路图AT89C52最小系统的电路构成为:(1) 电源电路:向单片机供电。AT89S51单片机的工作电压范围:4.0V5.5V,所以通常给单片机外接5V直流电源。连接方式为VCC(40脚):接电源+5V端VSS(20脚):接电源地端8。(2) 时钟电路:单片机工作的时间基准,决定单片机工作速度。时钟电路就是振荡电路,向单片机提供一个正弦波信号作为基准,决定单片机的执行速度。AT89S51单片机时钟频率范围:0-33MHz9。(3) 复位电路:确定单片机工作的起始状态,完成单片机的启动过程。单片机接通电源时产生复位
26、信号,完成单片机启动,确定单片机起始工作状态。手动按键产生复位信号,完成单片机启动,确定单片机的初始状态。通常在单片机工作出现混乱或“死机”时,使用手动复位可实现单片机“重启”。4.2 光电传感器电路的设计光电式传感器photoelectric transducer,基于光电效应的传感器,在受到可见光照射后即产生光电效应,将光信号转换成电信号输出10。光电式传感器产生的脉冲电信号输人到单片机的计数器T0引脚(P34),AT89C5l的定时器0定时一段时间后。提取T0中的脉冲个数,就可计算出车辆的行驶的瞬时速度。图4.2 测速传感器电路图4.3报警电路的设计报警模块主要负责超速声音报警,提醒驾驶
27、员应当马上减速行驶,以免发生交通事故。报警电路比较简单,声音报警系统由单片机引脚接上拉电阻,三极管及蜂鸣器构成15。电路设计简图如下图所示:图4.3 报警电路图4.4 显示电路的设计显示电路由LCD1602完成,LCD1602与单片机接口方便,操作简单,能显示字母、数字和符号等。本设计利用LCD1602显示实时速度和超速提示显示。LCD1602显示电路如下图:图4.4 LCD1602显示电路图4.5 按键电路的设计汽车超速报警器的按键电路由三个开关加上拉电阻构成,所以要使用单片机的三个引脚,三个开关则分别对应着模式选择、速度增加以及速度减小,通过对开关的操作可以对速度上限值进行设定,另外由于还
28、有速度增减的按键,可以方便的根据驾驶员的实时实地要求进行速度更改以达到报警目的,具有很强的操作灵活性11。其简图如下:图4.5 按键电路图第5章 软件设计5.1主程序的设计主程序由定时器脉冲计数子程序、数据处理子程序、显示子程序、报警子程序和按键中断程序等组成。开始显示清零 定时、计数器开始工作中断等待 否判断中断是否成功读计数器是计算速度显示调用报警子程序判断是否超速是输出报警信号否结束图5.1 主程序流程图该系统主程序主要完成硬件初始化、子程序调用以及显示、报警等功能。定时器脉冲计数子程序和数据处理子程序主要完成监测车辆速度即主要是计算出车辆的时速,为报警子程序提供参考数据;显示子程序设计
29、采用数字化显示用户设定的最高时速和车辆实际时速,用LCD1602进行动态显示;报警子程序主要实现在车辆超速行驶状态下发出报警信号;按键中断子程序主要实现根据驾驶员的实时实地要求进行速度更改以达到报警目的12。 主程序清单:main() int i=0; float sum=0; int flag=0; unsigned long int a; char temp16; /定义字符显示缓冲数组 Init_Timer0(); /初始化定时器0 Init_Timer1(); /初始化定时器1 Init_zhongduan(); /初始化外部中断0 和1 LCD_Init(); /初始化液晶屏 Del
30、ayMs(10); /延时用于稳定,可以去掉 LCD_Clear(); /清屏 while(1) keyscan(); sprintf(temp,mode:%d limit:%d,mode,speed_limit); LCD_Write_String(0,0,temp);/显示到液晶第1行 pwm(time); if(OVERFLOWFLAG)/检测溢出标志,溢出表明频率过高,显示溢出信息 OVERFLOWFLAG=0;/标志清零 LCD_Write_String(0,1,overflow 655KHz); if(TIMERFLAG) /定时100ms到,做数据处理(每100ms处理一次数据)
31、 i+; a=TL0+TH0*256;/读取计数值 a=a*10; /实际值乘以10相当于做了变换1秒钟转了a圈 a=a/4; /因为 转盘上面有4个孔 除以4表示实际转的圈数 if(flag=0) /这句话在while循环中只运行一次 sprintf(temp,speed:%06.0f r/s,(float)a); LCD_Write_String(0,1,temp);/显示到液晶第二行 flag=1; TR0=1; /2个定时器打开 TR1=1; TH0=0; /100ms过后使TH0 和TL0的值为0,令计数器初值为0 TL0=0; TIMERFLAG=0; /关闭计时计数标志 sum=
32、sum+a; if(i=2)/循环2次目的是为了使显示的更清楚,消除显示跳变的现象 a=sum/2.0; i=0; sum=0; if(aspeed_limit) buzzer=0;time=time-5; else buzzer=1; sprintf(temp,speed:%06.0f r/s,(float)a); LCD_Write_String(0,1,temp);/显示到液晶第二行 5.2 脉冲计数程序的设计AT89C51单片机片内有两个16位定时器/计数器,分别为定时器T0和定时器T1,两个16位定时器均采用加法型计数结构,即每个计数脉冲加1,直至溢出。T0 和T1 的计数脉冲可以由
33、单片机时钟脉冲经过12 秒分频后提供,故定时时间和单片机时钟频率有关。在计数器模式下,T0 和T1 可以对输入P3.4 和P3.5 引脚上的外部脉冲进行计数。设定时器T1工作于模式1,定时100毫秒;设定时计数器T0工作于模式1,计数器模式,初值为0,并利用TL0和TH0存储1000毫秒内外部速度脉冲数。计算出车子的车速13 14。程序流程图:开始T0初始化 T1初始化 中断等待 否判断时间到否?储存计数值图5.2 脉冲计数程序流程图程序清单:a、定时器T0初始化:void Init_Timer0(void) TMOD |= 0x01 | 0x04; /使用模式1,16位计数器, TH0=0x
34、00; /给定初值 TL0=0x00; EA=1; /总中断打开 ET0=1; /定时器中断打开 TR0=1; /定时器0开关打开b、定时器T1初始化:void Init_Timer1(void) TMOD |= 0x10; /使用模式1,使用|符号在使用多个定时器时不受影响 TH1=HIGH;/给定初值,使用定时器最大值从0开始计数一直到65535溢出 TL1=LOW; EA=1; /总中断打开 ET1=1; /定时器中断打开 TR1=1; /定时器开关打开c、定时器T0和T1中断子程序:void Timer0_isr(void) interrupt 1 TH0=00; /重新给定初值 TL
35、0=00; OVERFLOWFLAG=1; /溢出标志void Timer1_isr(void) interrupt 3 static unsigned char i; TH1=HIGH; /重新赋值10ms TL1=LOW; i+; if(i=10) /100ms时间单位,得100ms脉冲个数*10就是1s中脉冲个数, i=0; TR0=0; /2个定时器关闭 TR1=0; TIMERFLAG=1; /标志位清零 TH1=HIGH; /重新赋值 TL1=LOW; 5.3 显示模块程序的设计主控芯片AT89C52驱动LCD1602,实时显示由计数脉冲计算得到的车速(r/s)、车速设定模式、最高
36、限定车速值和超速警告等信息。程序清单:a、LCD1602写入命令函数:void LCD_Write_Com(unsigned char com) while(LCD_Check_Busy(); /忙则等待 RS_CLR; RW_CLR; EN_SET; DataPort= com; _nop_(); EN_CLR; a、LCD1602写入数据函数: void LCD_Write_Data(unsigned char Data) while(LCD_Check_Busy(); /忙则等待 RS_SET; RW_CLR; EN_SET; DataPort= Data; _nop_(); EN_CL
37、R; a、LCD1602写入字符串函数:void LCD_Write_String(unsigned char x,unsigned char y,unsigned char *s) while (*s) LCD_Write_Char(x,y,*s); s +; x+; 5.4 按键中断子程序设计按键中断子程序主要实现根据驾驶员的实时实地要求进行最高限定速度更改以达到最优的限速,超速报警的目的。 程序流程图:开始判断是否有键按下? 否 按键值加1 不同的按键值对应不同的限速模式 图5.3 按键程序流程图程序清单:void keyscan()if(key_mode=0)while(key_mod
38、e=0);mode+;if(mode=1)speed_limit=140;if(mode=2)speed_limit=100;if(mode=3)speed_limit=90;if(mode=4)speed_limit=80;if(mode=5)mode=1;5.5 报警模块程序设计根据实时路段设置了一个最高限定速度值,将计算的实时速度值与已经设定最高限定速度值比较,如果大于了最高限定速度值,报警器报警,提示驾驶员减速行驶。程序流程图:报警子程序实时速度是否大于设定阈值速度 否报警 是结束 图5.4 报警模块程序流程图程序清单:a=TL0+TH0*256;/读取计数值a=a*10; /扩大到实
39、际值,乘以10相当于做了变换 ,1秒钟的时间转了a圈a=a/4; /除以4是因为 转盘上面有4个孔 除以4 表示 实际转的圈数if(aspeed_limit)buzzer=0;time=time-5;elsebuzzer=1;结 论目前交通问题已经普遍成为城市发展急需解决的难题,随着科技的深入发展,汽车系统智能化管理已成为必然趋势。本课题基于单片机的超速报警器的设计,本设计以AT89C52为核心,光电式传感器为车速采集元件,克服了磁电式传感器抗电磁波干扰能力差和霍尔传感器安装复杂的难题。通过采集光电式传感器检测的脉冲数直接送入单片机处理,减少了A/D 转换等步骤,实现了快速采样。单片机控制LC
40、D1602显示和蜂鸣器喇叭报警,显示器能满足系统的要求,蜂鸣报警简单适用。软件设计采用C语言和单片机中断技术,运算效率高,满足了实时测量的要求。该系统结构简单,成本低廉,调试难度小,稳定性较好,能实现快速检测车速并及时显示,这样的测量系统应用是很广泛的。因硬件因素和个人知识的局限,系统本身也有一些不足。第一,低频段测量误差大,表现在测频方法的选择不利于低频信号,定时时间100 毫秒不能采集低于20 赫兹的信号;第二,不能有效滤除与测速信号的频率相近的干扰信号。所以本系统不能作为纯粹的车速测量显示仪,但是超速是在高频段,用来测量显示高速行驶汽车的速度及实现超速报警是比较精确的,作为超速报警仪是可行的。在设计的过程中,发现了自己有很多欠缺,比如对所学过的单片机、智能仪表、测控系统等知识掌握得还不够,尤其对编程感觉比较吃力。通过本设计,使学过的知识得到了巩固,对一些领域的新知识有一定的摄入,使自己得到相应的提高,以后将会继续努力拓展知识面。参考文献1 邵
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100