![超速报警器设计思路_第1页](http://file1.renrendoc.com/fileroot_temp2/2020-4/12/9e9aa79d-db28-4916-840a-2d2811450857/9e9aa79d-db28-4916-840a-2d28114508571.gif)
![超速报警器设计思路_第2页](http://file1.renrendoc.com/fileroot_temp2/2020-4/12/9e9aa79d-db28-4916-840a-2d2811450857/9e9aa79d-db28-4916-840a-2d28114508572.gif)
![超速报警器设计思路_第3页](http://file1.renrendoc.com/fileroot_temp2/2020-4/12/9e9aa79d-db28-4916-840a-2d2811450857/9e9aa79d-db28-4916-840a-2d28114508573.gif)
![超速报警器设计思路_第4页](http://file1.renrendoc.com/fileroot_temp2/2020-4/12/9e9aa79d-db28-4916-840a-2d2811450857/9e9aa79d-db28-4916-840a-2d28114508574.gif)
![超速报警器设计思路_第5页](http://file1.renrendoc.com/fileroot_temp2/2020-4/12/9e9aa79d-db28-4916-840a-2d2811450857/9e9aa79d-db28-4916-840a-2d28114508575.gif)
已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
超速报警器设计思路 第2章系统原理2.1超速报警器设计思路2.1.1设计要求本论文设计的51单片机超速报警系统是具有数字显示功能的,可以显示车子的实际速度,只要车子的实际速度大于公路限定的速度是,汽车上的报警器就会利用蜂鸣器报警,从而提醒驾驶员减速慢行。 在设计电路时,我们应该考虑下面几点要求1.在设计电路时,我们要遵守从整体到部分,把一个复杂的设计转变为几个简单的问题,这样可以方便解决。 2.设计电路时只要把最基本的性能做出来就行,不要太过复杂。 这样做一是为了考虑每个人的接受能力不同,二是越复杂的电路元件用的就越多,元器件一多性价比就不高了。 3.还要保证设计电路的寿命和故障发生一次的频率。 4.在设计电路时,电路界面上的按键一定要精辟,因为按键多了人们就会搞不清楚,每个人的知识水平还是存在差距的。 下面有两种方案第一种方案方案一是具有输入/输出接口、RAM8155的芯片和具有速度变更能力的键盘电路,8155芯片有256个字节的数据存储器,2个八位,1个一位输入/输出口和一个14位计数器。 系统的硬件电路简图如图2.1所示。 常州信息职业技术学院电子与电气工程学院毕业设计论文1图2.1系统硬件电路简图在图2.1系统硬件电路简图中,键盘键入是用来设置报警的速度,当实际车速大于最大速度是,声光报警电路就会报警,霍尔传感器是用来产生方波的。 霍尔传感器的输出接口接51单片机的外部中断,轮子每转一圈就会产生一次INT中断请求,51单片机就会对这个零中断请求的次数进行累计,并且将一秒内的累计值转化成汽车的速度,送到显示区从而提供数据给显示程序。 计算的公式是V=d60n3.6km/h。 其中,51单片机的累计值是n,汽车的车轮周长是d.在硬件电路图中,传感器的输出时由AT89C51的INTO口的输入保存在内部数据存储区中,8155芯片是AT89C51的外部扩展芯片,它的PB口是接发光数码管的,PA4-PA0是发光数码管的键盘竖线,PC0和PC1是键盘的横线,这样就组成了10个键盘的按键。 P2.6口在AT89C51中是用来接三极管放大器的从而驱动报警电路,P2.6口会一直输出101010101010这样重复的高低电平信号,控制报警电路报警。 报警电路只要输出256HZ和350HZ的声音每个0.73S时,就可以发出报警声从而提醒司机。 汽车上的最大速度是用键盘存储起来的。 51单片机检测传感器发出的信息,然后算出汽车的实际速度再送给LED显示器,当实际速度大于最大速度时,报警电路就会报警,报警电路的硬件电路如图2.2所示。 C430MHZR1122R105.1KR1210KR7100R1100R3100R2100R4R8100R6100R5100C130pFC230pFR95.1KC30.1uFGNDGND+5V+5VAD012PA021AD113PA122AD214PA223AD315PA324AD416PA425AD517PA526AD618PA627AD719PA728PB029CE8PB130RD9PB231WR10PB332IO/M7PB433ALE11PB534PB635PB736TMROUT6PC037PC138TMRIN3PC239PC31PC42RESET4PC55U28155HEA/VP31X119X218RESET9RD17WR16INT012INT113T014T115P101P112P123P134P145P156P167P178P0039P0138P0237P0336P0435P0534P0633P0732P2021P2122P2223P2324P2425P2526P2627P2728PSEN29ALE/P30TXD11RXD10U180511212A1211A1210A1213A129A121A342AB123A124A125A126A127A128AS5S3S4S2S1SPEAKERSPEAKERPNPPNP S6S7S8S9S10LEDLED1LED2LED3LED4B1B2B3B4B5B1B2B3B4B5A1A2A3A4A5A6A7A8A1A2A3A4A5A6A7A88051单片机8155+5传感输入常州信息职业技术学院电子与电气工程学院毕业设计论文2图2.2硬件电路图方案二利用串行I/0的共阴极发光数码管显示器MAX7219和按键电路实现。 MAX7219是用来显示实际速度和设定速度的,当实际速度大于最大速度是,报警电路就会发出报警声,按键电路时用来设定报警的最大速度的。 系统的硬件电路简图和硬件电路图如图2.3和2.4所示。 图2.3硬件电路图图2.4系统硬件电路图2.1.2方案的比较及确定对于方案一和方案二,方案一是采用的8155芯片,8155芯片的接线管脚很多,但是键盘电路比较复杂,而且只能显示实际速度,总体电路较为复杂;方案二电路采用的是MAX7219芯片,它是一个串行I/O的共阴极发光晶体管显示器,常州信息职业技术学院电子与电气工程学院毕业设计论文3可以显示八位七段带有小数点的共阴极数码管,可以连在一起,连接只需3根线,而且速度的设定可以用多个按钮操作,并且可以实现最大速度的变更,所以硬件电路简单,操作方便。 对于本论文设计的汽车速度报警电路而言,设计的基础就是采用现代的工艺,经过计算机的处理科技,提高设计的精确度和稳定性,再扩展其性能,是报警器不仅可以精确的显示实际速度而且还要是操作简单化。 对于此,设计的方案如图2.5所示。 图2.5设计方案图2.2超速报警器的总原理图超速报警电路是将汽车传感器的实际车速送到传感器电路中,从而得到一个与汽车速度频率一样的信号,并把结果送到单片机中计数。 得出的数值与51单片机内部值相比较,如果比键盘输入的上限值还要大则显示汽车超速行驶,紧接着报警电路就会通过蜂鸣器进行报警。 该系统由电源电路、时钟电路、复位电路、速度显示电路、按键电路、键盘(设定报警车速值)、报警电路、霍尔传感器连接电路和控制单片机组成。 总原理图如图2.6所示。 图2.6总原理图2.3超速报警器的优点 1、只要车主超速时超速电路就会报警,从而提醒车主保证车主的人身安全。 电源电路时钟电路复位电路报警电路按键电路霍尔传感器连接电路显示电路单片机常州信息职业技术学院电子与电气工程学院毕业设计论文 42、超速报警器是将传感器产生的车速信号与单片机相比较。 如果超过了标注值则可判断汽车超速,蜂鸣器报警提示。 3、超速报警器的设计将电源电路、时钟电路、复位电路、速度显示电路、按键电路、报警电路、霍尔传感器连接电路等电路组合起来组成超速报警器。 第3章超速报警器硬件设计3.1硬件概述3.1.1单片机的基本组成1.内部程序存储器(ROM)ROM只是一个通称,实际上程序存储器通常分ROM、EEPEOM和FLASH ROM即是用来存放程序所对应的二进制代码的地方,因此称为程序存储器。 一旦程序固化到程序存储器后是只读部写的,因此程序存储器为READ-ONLY MEMORY.2.中央处理器(CPU)程序被固化到单片机后,系统上电,如果提供给单片机的电源系统、复位信号、时钟信号均满足要求,则单片机内最核心的部件CPU开始工作。 工作的基本过程中央处理器的控制器从ROM中将代码取出并分析该代码,根据代码对应的指令执行。 如果从ROM中取出“C2H90H”,则CPU分析后就会向P1.0输出低电平。 执行完一条指令紧接着取下一个代码,如此一条一条下去。 3.内部数据存储器(内部RAM)51单片机的芯片8155中有256个ROM,但后面128个被专用寄存器强占了,给用户使用的只有前面128个单元。 3.1.2AT89C51引脚图引脚图如图3.1所示。 常州信息职业技术学院电子与电气工程学院毕业设计论文5图3.1引脚图VCC供电电压。 GND接地。 P0口电路中包含1个数据输出存储器、2个三态数据输入缓冲器、1个数据输出的驱动电路和1个输出控制电路。 当对P0口进行写操作是,由锁存器和驱动电路构成数据输出通路。 由于通路中已有输出锁存器,因此数据输出时可以与外设直接连接,而不需要再加数据锁存电路。 考虑到P0口既可以作为通用I/O口进行数据的输入输出,也可以作为单片机系统的地址/数据线使用。 为此在P0口的电路中有一个多路转接电路MUX。 在控制信号的作用下,多路转接电路可以分为接通锁存器输出或地址/数据线。 当做通用的I/O口使用时,内部控制信号发出低电平,封锁与门将输出驱动电路的T1FET截止,同时使多路转接电路MUX接通锁存器的输出通路。 当P0口作为输出口使用时,内部的写脉冲加在D触发器的CP端,数据写入存储器,并向端口引脚输出。 而当P0口作为输入口使用时,数据信号则直接从引脚通过输入三态缓冲器进入内部总线。 P1口因为P1口通常是I/0口使用的,所以在电路结构上与P0口有一些不同之处。 首先它再也不需要多路转接电路MUX;其次是电路的内部有上拉电阻,与场效应管共同组成输出驱动电路。 因此P1口作为输出口使用时,无须再外接上拉电阻。 当P1口作为输入口使用时,同样也需要先向其锁存器写“1”,使输出驱动电路的FET截止。 P2口P2口电路中比P1口多了一个多路转接电路MUX,这正好与P0口一样。 P2口可以作为通用I/O口使用。 这时多路转接开关接向锁存器Q端。 但通常情况下,P2口也可以作为系统扩展的高8位地址线使用,此时多路转接开头应接到“地址”方向。 P3口P3口的特点是在于为适应引脚信号第二功能的需要,增加了第二功能控制逻辑。 由于第二功能信号有输入和输出两类,因此分两种情况说明。 对于第二功能为输出的信号引脚,当作为I/O使用时,第二功能信号引线应保持高电平,与非门开通,以维持从锁存器到输出端数据输出通路的畅通。 当输出第二功能信号时,该位的锁存器应置“1”,使与非门对第二功能信号的输出是畅通的,从而实现第二功能信号的输出。 对于第二功能为输入的信号引脚,在口线的输入通路上增加了一个缓冲器,输入的第二功能信号就从这个缓冲器的输出端取得。 而作为I/O使用的数据输入,常州信息职业技术学院电子与电气工程学院毕业设计论文6仍取自三态缓冲器的输出端。 不管是作为输入口还是第二功能信号输入,输出电路中的锁存器输出和第二功能输出信号线都应该保持高电平。 表3.1P3口第二功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.20INT(外中断0)P3.31INT(外中断1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器1)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)3.1.3AT89C51单片机AT89C51是由美国的一家公司发明的,它是一个高性能、低电压的八位单片机,芯片内有4K字节的只读程序存储器PEOM和128字节的随机数据存储器ROM,AT89C51采用了美国公司高科技的生产技术,可以兼容51单片机的指令系统,芯片是用八位CPU和FLASH存储单元。 AT89C51单片机可以运用在许多高性价比的场合,还可以灵活运用。 3.1.4AT89C51主要性能参数1.可以和51单片机指令系统完全兼容;2.4K字节可以通过FLASH存储器任意改写;3.频率范围为0Hz-24MHz;4.程序存储器可以加密;5.内部存储器有128*8个字节;6.输入输出接口有32个;7.2个十六位计数/定时器;8.中断源有六个;9.具有掉电和低功率模式。 3.1.5AT89C51功能特性概述AT89C51芯片具有以下几种功能4K字节可以通过FLASH存储器任意改写,内部存储器有128*8个字节,输入输出接口有32个,2个十六位计数/定时器,1个全双工串行通信口。 即使空闲方式终止中央处理器工作,内部存储器、定时器、计数器还可以工作。 掉电模式会自动保存内部存储器的功能,但是振荡器不工作直到下一个硬件复位。 3.1.6空闲节电模式AT89C51有空闲模式和掉电模式两种省电模式。 这两种模式是控制电源控制寄存器PCON中的PCON.1HE PCON.0两个位来实现的。 掉电模式是PD,当PD=1时,将会把掉电模式和单片机模式同时激活,当PD和IOL同时为1,先激活掉电模式。 在空闲模式中,中央处理器会保持睡眠状态,并且芯片内所有外部设备保持激活状态,这种方式是软件产生的。 此刻,芯片中的内部存储器和所有的寄存器中的内容会保持不变。 任何中断请求和硬件复位都可以把空闲模式终止。 常州信息职业技术学院电子与电气工程学院毕业设计论文7终止空闲工作模式的方法有两种,第一种是只要任何一条中断程序运行,PCON.0就会被硬件清理,从而终止空闲模式。 程序会先响应中断,进入到中断程序后,会将中断程序执行完并紧跟着中断返回指令,下一条要执行的指令就是进入空闲模式指令后面的一条指令。 第二种方式是通过硬件复位时空闲模式终止。 需要大家注意的是当有复位信号来终止空闲模式时,中央处理器常常从激活空闲模式指令的下一条模式开始执行程序,要把内部的复位操作完成,复位脉冲要保持24个机器周期有效,在这里,内部程序禁止中央处理器访问内部存储器,但可以访问别的端口。 激活空闲模式的指令后面一条指令不能是存储器的写入指令,因为这样做可能会使端口产生意外的写入。 3.1.7掉电模式系统进入掉电模式中振荡器会终止工作,进入掉电模式的最后一条被执行的指令。 芯片中的内部存储器和功能寄存器的内容会在终止掉电模式之前冻结。 只有硬件复位后才能推出掉电模式,复位后将会重新设定功能寄存器中的内容但内部存储器中的内容不会改变,在电源没有恢复到正常电平前,复位是无效的,而且还要给予振荡器重启到正常工作的时间。 表3.2空闲和掉电模式外部引脚状态表模式程序存储器ALE PSENP0P1P2P3空闲模式内部11数据数据数据数据空闲模式外部11浮空数据地址数据掉电模式内部00数据数据数据数据掉电模式外部00浮空数据数据数据AT89C51可以与51单片机室外指令和输出管相互配合,可以将多功能八位中央处理器和存储器组合到同一个芯片中去,可以进行一千次的修改数据循环,数据可以保留十年。 它可以向许多控制系统提供性能稳定且性价比搞得方案。 因此,在设计和制作电路中经常会用到AT89C51芯片。 电路由AT89C51的18,19脚的时钟端(XTALl及XTAL2)以及12MHz晶振X 1、电容C1,C2组成,采用片内振荡方式。 复位电路采用简易的上电复位电路,主要由电阻R17,电容C3组成,分别接至AT89C51的RST复位输入端。 3.1.8时钟XTAL1和XTAL2XTAL1和XTAL2用于产生单片机工作所需要的时钟。 单片机是一个复杂的时序电路,要使用CPU和各功能部件协调工作,必须要有一个统一的时钟。 通常,有两种产生时钟的连接方式,一种是使用芯片内部时钟震荡电路产生时钟,另一种是在片外震荡处理好的时钟直接接入片内。 内部振荡电路如图3.2所示。 外部震荡电路如图3.3所示常州信息职业技术学院电子与电气工程学院毕业设计论文8R3R4R5R6S0S1S3S2+5VBT0BT1BT2BT3速度设置增加减少确认单片机8051图3.2内部震荡电路图3.3外部振荡电路3.2霍尔传感器连接电路霍尔传感传感器是由著名的美国地质学家Hall James发明的。 霍尔传感器的功能属于电磁效应的一种,这种功能是霍尔在18世纪研究导电机时不经意间发现的。 他发现虽然导体、半导体等也能实现这样的功能,但远没有霍尔元件功能强。 这项技术的发现时检测行业、工业方面有了巨大的突破。 类似半导体材料的导电性能、载流子的性能的判断都可以用霍尔效应来一一实现。 霍尔传感器图片和管脚图如图3.4所示。 图3.4霍尔传感器图片和管脚图在不导磁的圆材料最外面放上一块带磁的钢材料,把霍尔传感器放在不导磁圆材料的周围任意地方。 只要圆盘转一圈,传感器就会产生一个脉冲。 因此利用圆盘转动的速度单片机就可以测出传感器产生脉冲的频率了。 测速示意图如图3.5所示。 图3.5测速示意图3.3按键电路按键是由四个开关和四个上拉电阻组成,用到了8051单片机的BTO、BT 1、BT 2、BT3四个管脚,四个开关分别用来速度设置、速度提升、速度下降和速度的确定,对四个开关进行操作用户可以对速度的最大值进行设定,同时还可以对速度进行调整,从而驾驶员可以根据地方的不同设置不同的速度,电路设计的灵活性非常强。 按键电路如图3.6所示。 常州信息职业技术学院电子与电气工程学院毕业设计论文9图3.6按键电路图3.4显示电路显示电路是用MAX7219芯片来实现的,MAX7219是一种用来串行输入或串行输出的显示驱动器,它是共阴极显示的。 每一个芯片可以控制八个七段带有小数点的共阴极发光数码管。 下图中从A到G是发光二极管七段显示器的驱动端,SEGDP是用来控制发光二极管的小数点的。 DP是显示器七段小数点的IO,大小一般为40mA上下,若要调整可用软件进行,关闭时要接地。 DIG7到DIG0是八位数值驱动线。 电流是从发光二极管的共阴极吸入的,从而得到显示器的为驱动线,最大值可以到达500mA左右,关闭时接电源。 显示电路连接图如图3.7所示。 图3.7显示电路连接图3.5报警电路报警电路由两种,一种为声音报警,另一种为灯光报警。 这两种电路对大多数人人来说都可以接受。 声音报警电路由8051单片机、2个1K的电阻,一个晶体三极管和一个蜂鸣器组成。 声音报警电路如图3.8所示。 A14B16C20D23E21F15G17DP22DIG02DIG111DIG26DIG37DIG43DIG510DIG65DIG78DIN11LOAD12CLK13ISET18DOUT24U2MAX7219LED显示屏LED显示屏常州信息职业技术学院电子与电气工程学院毕业设计论文10图3.8声音报警电路图而灯光报警电路是由两个发光二极管D 1、D2构成。 用这样的方法来提示司机进行减速从而使交通事故发生的次数减少。 灯管报警电路图如图3.9所示。 图3.9灯管报警电路图3.6主控模块本次设计是利用MCS51系列单片机中的8051作为中心的。 因为8051的抗干扰性能极强,在干扰很大的场合都能工作。 8051中央处理器的频率是12MHZ,对于计数脉冲可以很快的进行处理。 8051的I/O共有三十二根线组成,它可以连接发光二极管显示器,传感器,存储器等。 8051使用的电压很低从而能耗也就低,这样只要使用干电池对它供电就行了。 但是8051也有它的缺点,他只能存储256B的数据,这样你可以利用外界存储器芯片来弥补它的不足。 8051最小应用系统电路如图3.10所示。 图3.108051最小应用系统3.7MAX7219芯片常州信息职业技术学院电子与电气工程学院毕业设计论文11MAX7219是一种串行I/O共阴极发光二极管显示驱动器。 每一个芯片可以控制八个七段带有小数点的共阴极发光数码管。 MAX7219有扫描电路,一般扫描电路会单独的进行工作除了要把显示的数据进行更新外,这样做可以节约时间和剩余用量的空间。 MAX7219芯片中有BCD译码器、驱动器、扫描电路、8*8的数据存储器和寄存器。 设计单片机的指令可以控制MAX7219芯片,从而它的工作方式可以改变。 MAX7219工作图如图3.11所示。 图3.11MAX7219工作图上图主要是用来说明DIN、CLK、LOAD这三个之间是怎么工作的。 其中DIN是数据输入端,CLK和LOAD就是相当于桥梁的作用。 CLK的下降沿触发是无效的,再看CLK的上升沿部分,二进制数据已经存到了CLK的里面,之后又是下降沿又是无效的,紧接着上升沿部分,数据有存到了CLK的内部,就这样一直工作直到16个周期全部完成。 在这个过程中LOAD一直处于低电平的状态下,只要这16个二进制数工作完它就会变到高电平状态中去。 第4章超速报警器软件设计4.1程序流程图汽车超速报警器的总体流程图如图所示。 软件编程采用C语言,用单片机的T1作为定时器,设定定时时间为1S。 由于单片机最大允许时间只有65S,需扩展定时时间。 一般有硬件扩展和软件扩展两种方式,本文采用软件扩展方式。 设T0定时时间为50ms,定时时间一到,溢出中断,在中断服务程序中,对中断次数寄存器加1,重复定时中断20次,时间为1s。 1s定时时间到,读取定时器T1(P3.5引脚)输入的脉冲数,为实时车速的频率值。 将该频率值与单片机内部设定值比较,判定是否超速。 程序流程图如图4.1所示。 常州信息职业技术学院电子与电气工程学院毕业设计论文12图4.1程序流程图软件主要是由主程序、按键程序、中断程序、发光二级管显示程序、声音或灯管报警程序组成。 硬件始化、子程序的调用还有显示、报警等性能是由主程序来完成的。 数据处理程序是用来,监测汽车行驶的速度是为了计算出车辆的时速,从而产生数据告知司机。 参数输入是否得当是由按键程序来实现的。 车辆超速行驶会发出报警信号这是由报警程序来完成的。 显示程序主要是显示车主当前开车的速度,标准最大速度,是由发光二极管进行显示。 主程序清单main()int i=0;float sum=0;int flag=0;unsigned longint a;char temp16;/定义字符显示缓冲数组Init_Timer0();/初始化定时器0常州信息职业技术学院电子与电气工程学院毕业设计论文13Init_Timer1();/初始化定时器1Init_zhongduan();/初始化外部中断0和1LED_Init();/初始化液晶屏DelayMs (10);/延时用于稳定,可以去掉LED_Clear();/清屏while (1)keyscan();sprintf(temp,mode:%d limit:%d,mode,speed_limit);LED_Write_String(0,0,temp);/显示到液晶第1行pwm(time);if(OVERFLOWFLAG)/检测溢出标志,溢出表明频率过高,显示溢出信息OVERFLOWFLAG=0;/标志清零LED_Write_String(0,1,overflow655KHz);if(TIMERFLAG)/定时100ms到,做数据处理(每100ms处理一次数据)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);LED_Write_String(0,1,temp);/显示到液晶第二行flag=1;TR0=1;/2个定时器打开TR1=1;TH0=0;/100ms过后使TH0和TL0的值为0,令计数器初值为0TL0=0;TIMERFLAG=0;/关闭计时计数标志sum=sum+a;if(i=2)/循环2次目的是为了使显示的更清楚,消除显示跳变的现象a=sum/2.0;i=0;sum=0;if(aspeed_limit)常州信息职业技术学院电子与电气工程学院毕业设计论文14buzzer=0;time=time-5;elsebuzzer=1;sprintf(temp,speed:%06.0f r/s,(float)a);LED_Write_String(0,1,temp);/显示到液晶第二行4.2脉冲计数程序设计AT89C51单片机内有T0和T1两个加法型16位定时器,在计数时,对P3.4和P3.5引脚上输入外部信号进行计数。 程序流程图如图4.2所示。 图4.2脉冲计数程序流程图程序清单a、定时器T0初始化void Init_Timer0(void)TMOD|=0x01|0x04;/使用模式1,16位计数器,TH0=0x00;/给定初值TL0=0x00;EA=1;/总中断打开ET0=1;/定时器中断打开TR0=1;/定时器0开关打开b、定时器T1初始化常州信息职业技术学院电子与电气工程学院毕业设计论文15void 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)interrupt1TH0=00;/重新给定初值TL0=00;OVERFLOWFLAG=1;/溢出标志void Timer1_isr(void)interrupt3static 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;4.3显示模块程序设计主控芯片AT89C51驱动发光二极管,实时显示由计数脉冲计算得到的车速(r/s)、车速设定模式、最高限定车速值和超速警告等信息。 程序清单a、发光二极管写入命令函数void LED_Write_Com(unsigned char)while(LED_Check_Busy();/忙则等待RS_CLR;常州信息职业技术学院电子与电气工程学院毕业设计论文16RW_CLR;EN_SET;DataPort=;_nop_();EN_CLR;b、发光二极管写入数据函数void LED_Write_Data(unsigned charData)while(LED_Check_Busy();/忙则等待RS_SET;RW_CLR;EN_SET;DataPort=Data;_nop_();EN_CLR;c、发光二极管写入字符串函数void LED_Write_String(unsigned charx,unsigned chary,unsignedchar*s)while(*s)LED_Write_Char(x,y,*s);s+;x+;4.4按键扫描程序按键中断子程序主要实现根据驾驶员的实时实地要求进行最高限定速度更改以达到最优的限速,超速报警的目的。 程序流程图如图4.3所示。 常州信息职业技术学院电子与电气工程学院毕业设计论文17图4.3程序流程图程序清单void keyscan()if(key_mode=0)while(key_mode=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;常州信息职业技术学院电子与电气工程学院毕业设计论文184.5报警模块程序设计根据实时路段设置了一个最高限定速度值,将计算的实时速度值与已经设定最高限定速度值比较,如果大于了最高限定速度值,报警器报警,提示驾驶员减速行驶。 程序流程图如图4.4所示。 图4.4程序流程图程序清单a=TL0+TH0*256;/读取计数值a=a*10;/扩大到实际值,乘以10相当于做了变换,1秒钟的时间转了a圈a=a/4;/除以4是因为转盘上面有4个孔除以4表示实际转的圈数。 if(aspeed_limit)buzzer=0;time=time-5;elsebuzzer=1;常州信息职业技术学院电子与电气工程学院毕业设计论文19常州信息职业技术学院电子与电气工程学院毕业设计论文20第5章软件仿真5.1仿真图KEIL是一款51单片机编译软件,本次设计就是用KEIL这款软件进行编译和保存,然后用Proteus仿真软件中画出本次设计的硬件电路,并把它和KEIL的HEX文件保存在同一文件下,通过仿真看程序能否成功。 1.不同频率的实际行车速度如图5.1和5.2所示。 图5.1实际速度显示图图5.2实际速度显示图毕设.DSNB C D E F GH JKA BC D E F G DPD3D2D1D0A BC DE FG DPD7D6D5D4ABCDEFGDPD0D1D2D3D4D5D6D7DINCSCLKDINCSCLKBT0BT1BT2BT3SPKSPKBT0BT1BT2BT3XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P2.7/A1528P2.0/A821P2.1/A922P2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年全球及中国工业级4-苄氧基苯酚行业头部企业市场占有率及排名调研报告
- 2025年全球及中国石墨片保护膜行业头部企业市场占有率及排名调研报告
- 2025年全球及中国消费电子NFC天线行业头部企业市场占有率及排名调研报告
- 2025年全球及中国旅游广告和营销服务行业头部企业市场占有率及排名调研报告
- 2025-2030全球非侵入式血流动力学监测解决方案行业调研及趋势分析报告
- 2025年全球及中国光伏舟托行业头部企业市场占有率及排名调研报告
- 2025年全球及中国晶须碳纳米管行业头部企业市场占有率及排名调研报告
- 2025年全球及中国溴化钙粉行业头部企业市场占有率及排名调研报告
- 2025-2030全球高压镍氢电池行业调研及趋势分析报告
- 2025年全球及中国智能电能量数据采集终端行业头部企业市场占有率及排名调研报告
- 第5课 隋唐时期的民族交往与交融 课件(23张) 2024-2025学年统编版七年级历史下册
- 2024年全国职业院校技能大赛高职组(生产事故应急救援赛项)考试题库(含答案)
- 2024年江苏农牧科技职业学院高职单招语文历年参考题库含答案解析
- 广联达智慧工地合同范例
- 老年上消化道出血急诊诊疗专家共识2024
- 广东省广州黄埔区2023-2024学年八年级上学期期末物理试卷(含答案)
- 医院护理10s管理
- 人教版一年级下册数学第五单元认识人民币练习
- 学校安全工作计划及行事历
- 《GMP基础知识培训》课件
- 2025届江苏省无锡市天一中学高一上数学期末质量检测试题含解析
评论
0/150
提交评论