汽车超速报警系统毕设毕业论文.doc

上传人:知****量 文档编号:91611435 上传时间:2023-05-27 格式:DOC 页数:33 大小:968.50KB
返回 下载 相关 举报
汽车超速报警系统毕设毕业论文.doc_第1页
第1页 / 共33页
汽车超速报警系统毕设毕业论文.doc_第2页
第2页 / 共33页
点击查看更多>>
资源描述

《汽车超速报警系统毕设毕业论文.doc》由会员分享,可在线阅读,更多相关《汽车超速报警系统毕设毕业论文.doc(33页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、汽车超速报警系统南 阳 理 工 学 院 本 科 毕 业 设 计(论文)汽车超速报警系统Automobile Speeding Alarm System学 院(系): 计算机与信息工程学院 专 业: 通信工程 学 生 姓 名: 底奔腾 学 号: 1306734009 指 导 教 师(职称): 鲁庆宾(副教授) 评 阅 教 师: 完 成 日 期: 2015年6月 南阳理工学院Nanyang Institute of Technology汽车超速报警系统通信工程专业 底奔腾摘要为了解决许多非职业驾驶员的无意识的超速问题,本文设计了一个基于单片机的汽车超速报警系统。该系统实时监控车辆行驶速度,并采用数

2、字显示屏直接显示所测速度。设计利用霍尔传感器模块产生里程数的脉冲信号,并送到555芯片进行信号的整形,然后送至单片机外部中断口,经过单片机的分析与综合来判断车辆是否超速。当所测速度超过所设极限值时,蜂鸣器开始报警,提示驾驶员减速行驶,达到防患于未然的效果。软件部分用C语言编程,采用模块化的设计思想。该系统结构简单,可靠性高,操作方便,可广泛应用于各类机动车辆。关键词单片机;霍尔传感器;蜂鸣报警器Automobile Speeding Alarm SystemMajor of Communication Engineering Di Ben-tengAbstract:In order to so

3、lve the problem of the nonprofessional drivers unconscious speeding, this article designed a speeding car alarm system based on single chip microcomputer.The vehicle speed for real-time monitoring of the system, and USES the digital display shows the measured speed directly.This design using hall se

4、nsor module mileage pulse signal, and send to the 555 chip to plastic signals and then sent to the single-chip microcomputer in the external fracture, the analysis and synthesis into a single chip microcomputer to determine whether the vehicle speed.When measured at a faster rate than the set limit

5、value when the buzzer alarm, prompt drivers slow down, to achieve the effect of nip in the bud.Software part in C language programming, using modular design thought.The system has simple structure, high reliability, convenient operation, can be widely used in various types of motor vehicles.Key word

6、s: Single chip microcomputer; Hall element; Visual alarm汽车超速报警系统目 录1 绪论11.1 设计研究背景11.2 设计研究的内容11.3 本文所做工作12 系统整体设计32.1 系统设计任务32.2 系统总体设计方案33.1主控模块53.1.1单片机的介绍53.1.2 单片机最小系统73.2 测速模块83.2.1 霍尔传感器简介83.2.2 霍尔传感器测量原理93.2.3 转速测量方法93.2.4 555芯片103.3 报警模块103.4 显示模块114 系统软件设计124.1 传感器模块设计124.2 显示模块设计135 系统仿真和

7、测试155.1 硬件仿真设计155.1.1 仿真软件的介绍Proteus ISIS155.1.2 硬件仿真过程155.2 软件仿真设计175.2.1 程序编辑软件描述Keil uVision4 C51175.2.2 软件仿真结果185.3 硬件电路显示结果18结论20参考文献21附录I 程序代码22附录II 电路原理图和仿真电路图29致谢30汽车超速报警系统1 绪论1.1 设计研究背景 随着现代汽车控制技术和高速公路的飞速发展,无论是运输业还是个人,汽车都已成为人们生活中不可或缺的产品。在我国,每年平均发生50万起交通事故,而机动车辆超速行驶依旧是最主要的罪魁祸首。国内外许多国家开始认识到超速

8、行驶对交通安全具有极大的危害,都加大了对车辆超速行驶的管制力度,研发先进的信息采集设备,并对车辆超速进行了大量的研究,以保证车辆的行驶安全,减少交通事故的发生。本设计是为解决汽车行驶过程中存在的安全隐患的角度出发,设计出一种检测车辆超过一定速度的报警系统。它采用MCS-51系列单片机设计一种体积小、操作简单的测速报警器。当车辆行驶速度大于设置的最高速度时,自动启动蜂鸣报警器报警。它利用霍尔传感器产生里程数的脉冲信号,脉冲信号经过555芯片的整形,然后利用单片机自带的计数器T0对霍尔传感器脉冲信号进行计数,进而求出转速。再利用软件编程,对数据进行处理并与极限值进行比较,当速度大于极限值时启动蜂鸣

9、器进行报警。1.2 设计研究的内容本文主要工作是利用霍尔元件、单片机、蜂鸣报警器、555芯片等部件设计一个汽车超速自动报警器。主要介绍了汽车超速报警器的设计思想、电路原理以及元件的选择等内容,整体上分为硬件部分设计和软件部分设计。硬件部分包括传感器的选择、单片机的选择、报警器的设计。汽车超速报警器的软件设计,包括传感器模块设计、显示模块设计等;再对仿真过程进行了具体说明与展示;最后对本次设计进行了系统的总结。具体的硬件电路包括STC89C52单片机的外围电路以及报警器的显示部分。程序部分采用C语言编写,设计的思想主要是自顶向下,模块化设计,各个子模块逐一设计。1.3 本文所做工作设计的主体有四

10、个主要部分,分别是系统整体设计、系统硬件设计、系统软件设计、系统仿真与测试。其中第2章是对系统整体设计的说明,包括系统设计任务和系统总体设计;第3章对硬件设计的描述,包括总体硬件电路的设计和各子电路的设计说明,总结了各个硬件功能,给出电路图并加以解释;第4章软件设计部分对编程软件的进行了介绍;第5章系统仿真与测试部分包括所用仿真软件的解释和说明以及在超速和不超速状态下系统结果的显示。2 系统整体设计2.1 系统设计任务本设计的任务是:以通用STC89C52单片机为处理核心,用传感器将车轮的转数转换为电脉冲的个数,经过555芯片的处理之后送到单片机进行计数,经过单片机的定时/计数器测出总的脉冲个

11、数和每转一圈所需要的的时间,再经过单片机的计算得出速度数值,并将该结果和极限值进行比较并在LCD上显示,当行驶速度超过速度极限值时,系统自动启动蜂鸣报警器进行报警,进而达到提醒司机注意安全驾车的功能。2.2 系统总体设计方案系统由单片机最小系统、霍尔元件、555芯片、1602液晶构成的,霍尔元件检测外部信号,输出信号到555芯片,经过整形后输出到单片机,经过单片机的分析与判断,进行1602液晶显示转速并控制蜂鸣报警器。系统总体设计框图如图2-1所示。被测物体555芯片整形霍尔传感器单片机STC89C52报警电源液晶显示图2-1 系统框图(1) 传感器模块在被测物体上放置磁钢,在被测物体转动过程

12、中,磁钢经过霍尔传感器产生脉冲信号,将信号输入到555芯片进行信号的整形。(2) 控制模块555芯片的输出端口连接单片机的外部中断口,通过定时器每秒对外部中断计数,得到每秒钟电机转过的圈数,就可以得到电机的转速,并送至1602进行转速的显示。(3) 显示模块显示部分是由1602液晶显示器组成的,液晶是由单片机端口控制。传感器得到的脉冲经过555整形输入到单片机外部中断口,通过定时得到电机转速,再显示在1602液晶上。随着电机转速的不断改变,液晶显示的数值也随着定时器设置的定时1s不断改变。(4) 报警模块报警部分是由蜂鸣器组成的,蜂鸣器由三极管驱动,当转速达到一定值时,蜂鸣器自动发声报警。3

13、系统硬件设计根据前面对设计任务的分析,该系统硬件的硬件设计需要包括四大模块:STC89C52单片机控制模块(STC89C52单片机、电源、复位电路、时钟电路、排阻)、霍尔传感器测速模块(霍尔传感器的接线图、555芯片原理图)、1602数码显示模块(显示电路原理图)和蜂鸣报警器报警模块(报警电路原理图)。其中主控模块主要完成外围硬件的控制以及一些运算功能;测速模块完成信号的采样和整形功能;数码显示模块完成字符、数字的显示功能;报警模块主要负责声音报警。硬件设计原理图如图3-1所示。图3-1 硬件设计原理图3.1主控模块3.1.1单片机的介绍STC89C52是一种带8K字节闪烁可编程可檫除只读存储

14、器(FPEROM-Flash Programable and Erasable Read Only Memory )的低电压,高性能CMOS8的微处理器,俗称单片机。该器件采用ATMEL搞密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。采用的是40引脚双列直插封装方式。具有看门狗定时器,三个16位的定时器/计数器,一个6向量2级中断结构等标准功能,并且是全双工串行口。另外还有就是STC89C52可以降到0Hz静态逻辑操作,并且能够完全支持2种软件而且可以自由的选择是否在节电的模式下工作。在空闲的模式下,CPU就会停止工作,但是能够保持RAM、定时器/计数器、串口、

15、中断一直工作下去。掉电保护模式下,会把RAM的内容保存下来,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。STC89C52单片机的外部引脚图如图3-2。图3-2 STC89C52的外形图Vss:接地端。XTAL1:片内振荡电路的输入端。XTAL2:片内振荡电路的输出端。RST/VPD:复位输入/备用电源输入复位信号。ALE:地址锁存输出/编程脉冲输入。PSEN:程序存储器允许,是读外部程序存储器的选用信号。EA/Vpp:外部程序存储器地址允许输入/编程电压输入。P0口(P0.0-P0.7):字节地址80H,位地址80H-87H,它可作

16、为普通的I/O接口,也可作为地址/数据线的复用端口。P1口(P1.0-P1.7):字节地址90H,位地址90H-97H,它8位准双向的I/O接口。P2口(P2.0-P2.7):字节地址A0H,位地址A0H-A7H。P3口(P3.0-P3.7):字节地址B0H,位地址B0H-B7H,P3口除了做一般的I/O接口使用之外,还具有第二功能。P3口在做第二功能时,只有一个功能有效,它是一个准双向的、多功能的I/O接口。P3口第二功能的详细介绍如表3-1。29表3-1 P3口第二功能口线第二功能备注P3.0RXD串行输入P3.1TXD串行输出P3.2INT0外部中断0P3.3INT1外部中断1P3.4T

17、0定时器0P3.5T1定时器1P3.6WR写选通P3.7RD读选通3.1.2 单片机最小系统单片机最小系统主要由电源、复位、振荡电路等部分组成。在本设计中,单片机选用的是STC89C52,由电容、晶振、电阻、电源等组成最小系统。本设计中最小系统设计原理图如图3-3所示。图3-3 单片机最小系统原理图(1)复位电路复位是指单片机的CPU或系统中其它的部件处于某一确定的初试状态,并从这一状态开始工作。除了进入系统的正常初始化之外,当由于程序运行出错或是操作错误使系统处于锁死状态,为摆脱困境,需要进行按键复位。本设计采用上电复位,原理是当电源接通后,上电瞬间RESET引脚获取高电平,该高电平需要电容

18、充电来维持,当高电平维持在两个机械周期以上则单片机能被复位。一般为了能够可靠复位,复位时间一般在10ms以上,对于振荡频率为12MHZ的复位电路,本设计选择了典型RC系数为:C=10uF ,R=10千欧。具体复位电路设计原理图如图3-4所示。图3-4 复位电路(2)时钟电路晶体振荡电路用于产生单片机工作时所需的时钟信号,从而保证各部分工作的同步。单片机内部有一个高增益反相反大器,只要在输入端XTAL1与输出XTAL2之间挂一个晶体振荡器和微调电容就可以构成一个稳定的自激震荡器并在单片机内部产生的时钟脉冲信号,电容器C1与C2用于稳定频率和快速起振,电容一般在0PF100PF,本设计电容为22P

19、F。本设计的时钟电路如图3-5所示。图3-5 时钟电路3.2 测速模块本模块选择了霍尔传感器和555芯片作为测速器件。在被测物体上放置磁钢,被测物体转动时,磁钢经过霍尔传感器产生脉冲信号,并输入到555芯片进行信号的整形,然后送至单片机进行数据的分析与判断。3.2.1 霍尔传感器简介根据霍尔效应,人们用半导体材料制成的元件叫霍尔元件。它具有对磁场敏感、结构简单、体积小、频率响应宽、输出电压变化大和使用寿命长等优点,因此,在测量、自动化、计算机和信息技术等领域得到广泛的应用。本设计选用的A3144E系列单极高温霍尔效应集成传感器是由稳压电源、霍尔电压发生器、差分放大器、施密特触发器和输出放大器组

20、成的磁敏传感电路,其输入为磁感应强度,输出是一个数字电压讯号。霍尔传感器的外形图如图3-6所示。图3-6 霍尔传感器的外形图本设计中我们将霍尔传感器的输出端接到555定时器的接收端,电路连接的原理图如图如图3-7所示。图3-7 霍尔传感器的接线图3.2.2 霍尔传感器测量原理在本设计中霍尔传感器是利用霍尔器件将电机的转速转化为脉冲信号。霍尔测速模块由霍尔传感器3144和555芯片构成。霍尔传感器需要和磁钢配合使用,在实际应用中,将磁钢安装在车轮上,在车轮附近的其他位置安装霍尔传感器。在车辆行驶过程中,磁钢转到接近霍尔元件的时候就会产生磁感应,远离时磁感应消失,这样就形成了一系列的脉冲信号。3.

21、2.3 转速测量方法转速的测量方法有很多,根据脉冲计数来实现转速测量的方法主要有一下几种:M法(测频法)、T法(测周期法)和MPT法(频率周期法)等,该系统采用的就是M法(测频法)。因为转速就是用单位时间内的转数来进行衡量的,在不断变换的过程当中大多数都是有规则的不断的重复的运动。并且依据霍尔效应的原理,在车轮转轴上的转盘的边沿上固定一块永久磁钢,转盘就会随着侧轴一块去旋转,磁钢也会随着侧轴和转盘同时旋转,将一个霍尔器件安装在转盘下方,转盘在跟着侧轴旋转的时候,就会被磁钢所产生的磁场影响到,这时霍尔器件就会输出一个一个的脉冲信号,其频率和转速是成一定的正比例的。脉冲信号的周期与车轮的转速有以下

22、关系:n=60/PT (3-1)公式中:n为车轮转速;P为车轮转一圈的脉冲个数;T为输出方波信号的周期时间。根据式(3-1)即可计算出小车的转速。本设计中只用了一个磁钢,所以车轮转动一圈,只产生了一个脉冲,P=1。3.2.4 555芯片555定时器成本非常的低,性能可靠,并且仅仅需要外部去接几个电阻或者电容或者电阻和电容的组合,就能实现多谐振荡器、单稳态触发器和施密特触发器等脉冲产生和变换的电路。它内部组成是两个电压比较器,三个等值串联电阻,一个RS触发器,一个放电管T及功率输出级。它提供两个基准电压VCC/3和2VCC/3。将555定时器的阈值输入端和触发输入端相接就组成了施密特触发器,它可

23、以对霍尔传感器输出的信号进行整形,然后再输出给单片机的外部中断口进行计数,可以有效减少计数干扰。芯片连接图如图3-8所示。图3-8 555芯片原理图3.3 报警模块电磁式蜂鸣器是一种一体化结构的电子讯响器,它采用的是直流电压供电,并且广泛的应用于计算机、打印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。本设计中选用电磁式蜂鸣器作为报警器。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。报警器的外形图和电路原理图如图3-9和图3-1

24、0。 图3-9 电磁式蜂鸣器 图3-10 报警电路原理图3.4 显示模块显示电路由LCD和单片机连接而成,LCD的横截面好像是很多层三明治重叠在一起的感觉,并且每面最外边一层是基本透明的玻璃基体,玻璃基体中部应该就是薄膜电晶体。通常,LCD后面都有照明灯用来显示画面。一般只要电流没有什么变动,液晶都是在非结晶的状态下的。这时液晶允许任何光线通过。液晶层受到电压变化的影响后,液晶仅仅只是允许一定数量的光线去通过。光线的反射角度也会严格按照液晶控制。当液晶的供电电压一旦发生变化时,液晶就会同时发生变形,所以光线的折射角度就会有所不同,从而就会使色彩去发生一定的变化。一个完完全全的TFT显示屏是由很

25、多像素组成的,每个像素像是一个能够打开和关闭的晶体管。这样就可以控制TFT显示屏的分辨率。本设计采用的仿真元件是LM016L,它有十四个管脚,下面表3-2是各管脚的具体介绍。表3-2 1602管脚介绍管脚名称备注VSS0VVDD5.0VVEERS H/L HH:数据线上为数据信号;L:数据线上为指令信号RW H/L HH:读数据模式;L:写数据模式E H/L使能信号端DB0-DB7数据线在本设计中,分别将1602显示屏的RS、RW、E管脚接单片机的P2.0、P2.1、P2.2管脚;数据端接在单片机的P0口。具体连接如图3-11所示。图3-11 显示电路原理图4 系统软件设计通过软件控制单片机的

26、功能是单片机的主要特点和优点,程序的设计要考虑合理性和可读性,遵循模块化设计的原则,采用自顶向下的设计方法。模块化设计使程序的可读性好、修改及完善方便。软件设计总体分为三部分,分别是传感器模块设计、显示模块设计和系统整体流程。4.1 传感器模块设计先进行初始化设置各定时器的初值,然后判断是不是开始用系统进行测量。如果是,就启动系统运行开始测量。如果不是就等待系统的启动。启动系统后,霍尔传感器检测脉冲到来以后,就接着启动外部中断指令,每次过来一个脉冲就中断一次,然后记录脉冲的个数。同时启动T0定时器工作,每1秒定时中断一次,读取最后记录的脉冲的个数,这个数值就是电机的转速。然后接着进行数值的判断

27、,若计算出的数值高于120km/h(33m/s),则自动报警并返回初始化阶段,否则就进行正常显示。如图4-1所示。是开始初始化是否启动等待中断555信号整形显示处理达到报警值否否是图4-1 传感器流程图4.2 显示模块设计 显示模块是由1602液晶组成的,其数据端DB0-DB7相应的与P0.0-P0.7。程序开始进行1602的初始化编程,并将要显示的字符和数字进行入栈保护;将显示内容转化成ASCLL码,存入内部寄存器;进行1602写命令的编写,进行结果的显示。显示模块设计的流程图如图4-2。开始1602初始化将要显示的入栈保护键值转化为ASCII码,存入寄存器1602液晶写命令结束显示图4-2

28、 显示模块流程图 4.3 系统整体流程对于整个系统,主要是由上面传感器模块和显示模块组成,系统稳定地运行离不开每个模块的工作。所以,一个系统都是由许多个小系统构成的,小系统之间的连带工作就使得整个系统运行起来,整个系统的流程图如图4-3所示。开始初始化555信号整形等待中断是否启动达到峰值显示处理 否 是 是 否 是图4-3 系统整体流程图5 系统仿真和测试5.1 硬件仿真设计5.1.1 仿真软件的介绍Proteus ISISProteus是英国Labcenter公司开发的多功能EDA软件。(该软件中国总代理为广州风标电子技术有限公司)。它是一个基于ProSPICE混合模型反震器的完整的嵌入式

29、统软、硬件设计仿真平台。它运行于Windows操作系统上,主要由两部分构成:分别是Proteus ISIS和Proteus ARES。Proteus ISIS可以仿真、分析各种模拟器件和集成电路。该软件有以下几个特点:(1) 实现了单片机仿真和SPICE电路仿真相互结合。 (2)完善的电路仿真功能(Prospice)和独特的单片机协同仿真功能(VSM),支持当前的大部分的单片机类型的系统的仿真,并且具有软件调试的功能,同时也能够支持第三方的软件编译和调试环境,例如Keil uVision4等软件。(3) 智能原理图设计(ISIS),具有强大的原理图绘制功能;(4) 实用的PCB设计平台。原理图

30、到PCB的快速通道: 原理图设计完成后,一键便可进入ARES的PCB设计环境,实现从概念到产品的完整设计。5.1.2 硬件仿真过程(1)双击桌面上的ISIS 7 Professional图标,打开软件进入Proteus ISIS集成环境,可以看到其工作界面,如图5-1所示。图5-1 Proteus ISIS工作界面(2)单击对象选择器端左侧“P”按钮,选择所需要的仿真元件,如图5-2所示。图5-2 查找所需元件界面(3)根据本设计的系统分析画出仿真电路原理图,如图5-3所示。图5-3仿真电路原理图5.2 软件仿真设计5.2.1 程序编辑软件描述Keil uVision4 C51单片机虽然功能很

31、强,但只是一个芯片,既没有键盘也没有任何系统开发软件(如编辑、汇编、调试程序等)。本次设计中使用的是Keil Vision4软件,进入Keil Vision4后的编辑界面如下图所示。在编辑区编辑所要实现的功能程序。图5-4 Keil Vision4编辑界面5.2.2 软件仿真结果按照流程原理图设计并编写能实现自己所需功能的程序,总体程序如附录所示,编写后,在Keil Vision4中建立一个新工程,添加已经编好的程序,在编辑界面中编译。图5-5 程序编译结果显示本设计使用的就是这种语言,遵循自顶向下的编辑原则进行程序的编写。5.3 硬件电路显示结果在Proteus ISIS中连接好所需的电路原

32、理图,将在Keil中生成的.hex文件加入已连接好的系统电路图中运行,可达到预期结果。因为霍尔元件是个感应器,用它来感应汽车车轮的转速,但是霍尔传感器在Proteus ISIS中找不到对应仿真器件,因此用几个不同频率的信号源来替代外部感应源对霍尔传感器的感应结果,信号源的频率不同,就会得到不同的速度显示结果。点击“运行”按钮,可观察到1602液晶点亮,在程序里预置的极限值是120km/h(33m/s),所以当设置的输入频率为800Hz或者1.3KHz时,处于不超速状态,电路显示结果如图5-6所示。图5-6 不超速状态结果显示通过改变输入脉冲的频率为1.6KHz或者2.2KHz时,此时处于超速状

33、态,蜂鸣器响。结果如图5-7所示。图5-7 超速状态结果显示汽车超速报警系统结论该课题设计需要完成的任务是开发一个以STC89C52单片机为核心的汽车超速报警器。它主要分为硬件部分和软件部分的设计。硬件部分着重考虑了硬件电路的简单性,所以在设计的过程中我尽可能的简化电路设计,达到硬件电路最优化设计。软件部分采用C语言编写,采用了模块化设计思想,程序的可读性强。通过软件仿真、测试验证了系统的可行性。通过自己的努力和老师的帮助,此次设计的系统大致基本完成了这些功能:在汽车行驶过程中,霍尔传感器实时监控机动车辆的行驶速度并在LCD显示屏上显示,当所测速度超过了最高值,就会启动蜂鸣器报警以提示驾驶员减

34、速行驶。该系统具有结构简单,易操作,成本低,实用性强的特点,可以进一步的保障驾驶人员开车期间的安全问题。汽车超速报警系统参考文献1 李朝青编著. 单片机原理及接口技术 (第3版). 北京:北京航空航天大学出版社,2006.2 谢维成,杨加国主编. 单片机原理与应用及C51程序设计. 北京:清华大学出版社,2006.3 胡伟,季晓衡编著. 单片机C程序设计及应用实例. 北京:人民邮电出版社,2003.4 周立功等编著. 增强型80C51单片机速成与实战. 北京:北京航空航天大学出版社,2004.5 谭浩强编著. C程序设计. 北京:清华大学出版社,1999.6 李建忠编著. 单片机原理及应用.

35、西安:西安电子科技大学出版社,2002.7 吴黎明主编. 单片机原理及应用技术. 北京:科学技术出版社,2005.8 何桥主编. 单片机原理及应用. 北京:中国铁道出版社, 2004.附录I 程序代码#include#define uchar unsigned char#define uint unsigned intsbit rs=P20;sbit rw=P21;sbit en=P22;sbit jiasu=P32;sbit jiansu=P33;uint speed;uint hspeed=1200;uchar test=1;/自检模式uchar normal=0;/正常模式uchar n

36、or_speed;/不超速情况uchar exc_speed;/超速情况uchar cnt_ovtime;/单位时间内计时器溢出次数uint data dis4=0;/存放速度个,十,百,还有小数点后一位,还有个中间变量uint data dis14=0;void delay_ms(uint i)uint j;while(i-) for(j=0;j=hspeed) exc_speed=1;/速度大于120,标志为超速 nor_speed=0;else nor_speed=1; exc_speed=0;TH1=0;TL1=0;counter=0;cnt_ovtime=0; void it_tim

37、er1() interrupt 3/TF1=0;cnt_ovtime+;void ext0_init()IT0=0;EX0=1;EA=1;void ext1_init()IT1=0;EX1=1;EA=1;void check_busy()en=0;P1=0xff;rs=0;rw=1;en=1;while(P0&0x80);en=0;void write_com(uchar com)/写指令check_busy();rs=0;rw=0;en=1;P1=com;delay_ms(1);en=0;void write_dat(uchar dat)/写数据check_busy();rs=1;rw=0;

38、en=1;P1=dat;delay_ms(1);en=0;void lcd_clear()/清屏write_com(0x01);delay_ms(5);void lcd_string(uchar x,uchar y,uchar *str)/写字符串if(!y) write_com(0x80+x); else write_com(0xc0+x); while(*str) write_dat(*str);str+; void lcd_char(uchar x,uchar y,uchar Dat)/写字符if(!y) write_com(0x80+x); else write_com(0xc0+x)

39、; write_dat(Dat);void lcd_init()write_com(0x38);delay_ms(5);write_com(0x38);delay_ms(5);write_com(0x38);delay_ms(5);write_com(0x08);write_com(0x06);write_com(0x01);delay_ms(5);write_com(0x0c);main()lcd_init();/初始化LCDlcd_clear();/清屏init_timer0();/初始化定时器init_timer1();/初始化计数器ext0_init();ext1_init();jia

40、su=1;jiansu=1;if(test)/检测模式 P2|=0x70;/绿灯亮,红灯亮,蜂鸣器响 lcd_string(0,0,Lifes precious!); lcd_string(0,1,Safe Driving!); delay_ms(2000); P2&=0x70;/灯灭,蜂鸣器不响 lcd_init(); test=0; normal=1; delay_ms(1000);if(normal) while(1) if(nor_speed) P2|=0x10;/绿灯亮 P2&=0x60;/红灯不亮,蜂鸣器灭 lcd_string(0,0,Speed:); dis3=speed/10

41、00; dis2=speed%1000/100; dis1=speed%1000%100/10; dis0=speed%1000%100%10; if(dis3!=0) lcd_char(6,0,dis3+0x30); else lcd_char(6,0,0xa0); lcd_char(7,0,dis2+0x30); lcd_char(8,0,dis1+0x30); lcd_char(10,0,dis0+0x30); lcd_string(9,0,.); lcd_string(11,0,km/h); lcd_string(0,1,Status:Normal); if(exc_speed) lcd_string(0,0,Speed:); dis3=speed/1000; dis2=speed%1000/100; dis1=speed%1000%100/10; dis0=speed%1000%100%10; if(dis3!=0) lcd_char(6,0,dis3+0x30); else lcd_char(6,0,0xa0); lcd_char(7,0,dis2+0x30); lcd_char(8,0,dis1+0x30); lcd_char(10,0,dis0+0x30); lcd_string(9,0,.);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁