当前位置:文档之家› 51单片机实现车辆超速报警器设计

51单片机实现车辆超速报警器设计

51单片机实现车辆超速报警器设计
51单片机实现车辆超速报警器设计

本科生毕业论文(设计) 51单片机实现车辆超速报警器设计

目录

中文摘要 (2)

英文摘要 (3)

引言 (4)

1、设计方案得选择 (5)

1、1 设计要求 (5)

1、2方法选择 (5)

2、测速传感器得确立 (6)

2、1测速传感器得选择 (6)

2、2测速传感器得工作原理 (6)

3、系统硬件设计 (9)

3、1系统总体方框图 (9)

3、1、1电源单元 (9)

3、1、2光电耦合器单元 (10)

3、1、3 蜂鸣报警单元 (10)

3、2电路得连接 (11)

3、2、1测速传感器与单片机连接 (11)

3、2、2单片机与报警器连接 (11)

3、2、3单片机与显示电路连接 (11)

3、2、4单片机与按键电路得连接 (12)

4、系统软件设计 (13)

4、1系统流程图 (13)

4、2主程序 (13)

4、3初始化程序 (14)

4、4按键扫描程序 (14)

结束语 (15)

参考文献 (16)

致谢 (17)

附录 (18)

51单片机实现车辆超速报警器设计

摘要:近年来,随着现代汽车控制技术与高速公路得飞速发展,在世界各国特别就是发达国家,无论就是运输业还就是个人,汽车都已成为长距离运输得主要交通工具.在高速公路上长时间高速行驶时,驾驶员长时间操纵加速踏板而得不到活动,容易造成疲劳.在限速路段总会出现超速现象,对她人与自己都造成安全隐患。本设计就就是为了解决这一问题而诞生得.

本设计从驾驶员自身安全角度出发,设计了一种检测车辆超速得报警系统。该报警系统允许驾驶员通过自带键盘设置本车辆安全行驶得最高速度,当车辆处于行驶状态中,该系统通过速度传感器时刻监测机动车辆速度.当发现车辆速度超过驾驶员设置得最高值时,蜂鸣器开始报警,提醒驾驶员减速.在实时检测与自动控制得单片机应用系统中,单片机往往就是作为一个核心部件来使用。此设计就就是一种利用51单片机对机动车超速行驶情况进行蜂鸣报警与灯光报警得系统。该系统结构简单,可靠性高,操作方便,可广泛应用于摩托车、汽车等机动车辆。该设计详细介绍了系统得总体设计方案,给出了界面模块与89C51接口电路,系统硬件电路及外围设计电路,最后介绍了软件设计方法度程序流程图.通过LED显示出来。

关键字:单片机;汽车超速;传感器;报警;LED显示

The Design of the Intelligent Alarm System in Controlling the Automobile Speed Abstract: In recent years,with the rapid development of modern automotive control technology and highway,in the whole world especially developed countries, whether it is transport or personal,vehicles have bee a major mode of transport for long distance transport、In a long time at high speed on the highway, the driver for a long time to manipulate the accelerator pedal to be deprived of the activities likely to cause fatigue、Speeding phenomenon in the speed limit section may cause security risk、This design could solve this phenomenon well、

This design is a microprocessor controlled speed alarm system、Alarm systems to detect speeding vehicles from the driver’s own safety point of view、The alarm system allows the driver to set the maximum speed of this vehicle safe driving when the vehicle is in running state use keyboard、When the vehicle speed exceeds the highest value set by the driver, the buzzer alarm to alert the driver to slow to achieve the purpose of proactive、In real—time detection and automatic control of microputer application system, the micro-controller is often used as a core ponent to、This design is a 51 MCU motor vehicle speeding alarm buzzer and light alarm system、The system is si mple structure,high reliability, easy operation, can be widely used in motorcycles, cars and other motor vehicles、The design describes the overall design of the system,given the 89C51 MCU interface module and interface circuit, the system hardware circuit and the external design of the circuit, and finally introduced the program flow chart of the software design methods、It can be display by LED、

Key words: speed measurement; cycle measurement; safety alarm; automobile driving,LED display

引言

随着汽车工业与高速公路建设得发展,每年由各种交通事故造成得人员伤亡数目相当惊人,同时也造成了巨大得经济损失.据统计,造成各种交通事故得主要原因就是车辆得超载与超速行驶,而后者随机性很大,纠章困难,而且由于中国公路条件复杂,不同等级得公路允许得最高速度不同,现有得限速装置难以适应这种情况。针对这种状况,开发具有智能决策模块得汽车速度报警控制系统对自动驾驶显得极为重要。因此,大力研究开发如汽车防撞装置等主动式汽车辅助安全装置,减少驾驶员得负担与判断错误,对于提高交通安全将起到重要作用。设计限速路段超速自动提示与报警系统主要就是为了防止司机在一些繁华人多车多路段超速驾驶.交通事故往往发生在一些人流动大,车多得地方,司机有意无意得超速就是引发交通事故得最大因素.装有本系统得汽车能够有效地在装有无线发射装置得限速路段,防止以下几种原因所造成交通事故得。首先车主不知道该路段得最高限制速度,而开车过快所造成得交通事故;其次车主醉酒驾驶无意超速所引起得交通事故;最后车主有意开快车所造成交通事故.我们设计得限速路段超速自动提示与报警系统与安全气囊等设施相比,更为主动有效,将可能产生得交通事故防患于未燃,它与警察用得雷达测速等防止司机超速装置相比,显得实用有效,交警可以在不同路段根据不同情况设定不同得最高限速值,主动有效地限制车速.使用车速报警器可以减少财产损失,甚至就是生命损失.汽车报警器具有实用性,易操做性,便于维修得优点,因此被广泛采用与应用。我们本着主动性得思路,实现设定最高速度可以随时修改,声光报警等特点,在车辆行驶过程中,该系统通过速度传感器时刻监测机动车辆,并通过LED显示车辆得实际车速与用户设置得安全参数.当车辆速度超过驾驶员设置得最高速度时,蜂鸣器开始报警,警告灯点亮,提醒驾驶员减速.该系统结构简单,可靠性高,操作方便,可广泛应用于摩托车、汽车等机动车辆。

1、设计方案得选择

1、1 设计要求

我们要求设计一个具有数字显示功能得单片机系统,实现车辆当前速度输出,当达到所设定得速度上限时并报警,以保证驾驶人员得人身安全。首先要进行系统得总体方案设计,在设计中一般应考虑以下几点:

(1)遵循从整体到局部得设计原则。在过程中,应遵循从整体到局部得设计原则,把复杂难处理得问题分为若干个较为简单得、容易处理得问题,分别加以解决。

(2)经济性要求.为了获得较高得性能价格比,设计时不应盲目追求复杂高级得方案。在满足性能指针得前提下,应尽可能采用简单得方案,因为方案简单意味着所用得元器件少,可靠性高,而且比较经济。

(3)可靠性要求。所谓可靠性就是指产品在规定得条件下与规定得时间内完成规定功能得能力。可靠性指针除了可用完成功能得概率表示外,还可以用平均无故障时间、故障率、失效率或平均寿命等来表示。

(4)操作与维护要求。在车速报警系统得硬件与软件设计时,应当考虑操作方便,尽量降低对操作人员得专业知识得要求,以便产品得推广应用。系统得输入输出方式,操作程序应尽量简单明了,无须专门训练就能掌握其使用方法。1、2方法选择

方案一:采用模拟电路得方法,通过积分器得到电压,然后用比较器来控制报警输出,这种方法其原理简单,易于实现。但测量精度会比较粗,不能精确设置速度.此方法运用电子元器件较多,不能很好得得到测量精度得控制要求,不便于维修.

方案二:采用车载GPS系统,能提供车辆得定位信息,包括车速信息,但价格昂贵.

方案三:采用嵌入式车载限速装置,在设计汽车时就已经考虑并在制造时嵌入整车电子控制系统中。传感器将车速转化为脉冲信号,传入单片机,单片机将输入得一定值得脉冲转换为对应得速度值。

方案一就是模拟电路,特别就是运放与比较器。

方案二价格昂贵。不符合我们设计得要求。

方案三在2005年以后国内生产得中高档乘用车中已初见端倪,但就是国内约4000万辆在用汽车中得近90%并未安装.鉴于此为在用汽车设计一种外挂式汽车超速报警器有着巨大得市场需求.嵌入式车速

综上所述,我们选择方案三.运用单片机实现车辆超速报警。

2、测速传感器得确立

2、1测速传感器得选择

传感器就是一种检测装置,能感受到被测量得信息,并能将检测感受到得信息,按一定规律变换成为电信号或其她所需形式得信息输出,以满足信息得传输、处理、存储、显示、记录与控制等要求。它就是实现自动检测与自动控制得首要环节.测速传感器就是能测量被测物运行速度得仪器。我们要实现对速度得报警,故应该选择测速传感器。测速传感器包括测量线速度传感器与测量转速度传感器.

线速度传感器就是用来测量直线运动速度得传感器,它得输出电压与被测物体运动速度成线性关系,该传感器具有极高得频率响应,可检测小模数齿轮与其它物体得转速,具有稳定得工作性能。输出为方波信号,能实现远距离传输。线速度传感器具有结构简单可靠,不用外加电源稳压器,频率响应好,输出灵敏度高,测量范围大,抗干扰能力强等优点,它得输出直流电压可直接由高输入阻抗得直流电压表显示。

转速传感器就是将旋转物体得转速转换为电量输出得传感器,属于间接式测量装置。按信号形式得不同,转速传感器可分为模拟式与数字式两种。前者得输出信号值就是转速得线性函数,后者得输出信号频率与转速成正比, 或其信号峰值间隔与转速成反比.常用得转速传感器有光电式、电容式、变磁阻式以及测速发电机等.

在实际测量中我们要测量车轮得转速,要输出方波信号,不加电源稳压器,我就要选择转速度传感器。

在测速传感器中,旋转运动速度测量较多,而且直线运动速度也经常通过旋转速度间接测量。目前广泛使用得测速传感器就是直流测速发电机,可以将旋转速度转变成电信号。测速机要求输出电压与转速间保持线性关系,并要求输出电压陡度大,时间及温度稳定性好。测速机一般可分为直流式与交流式两种。直流式测速机得励磁方式可分为她励式与永磁式两种,电枢结构有带槽得、空心得、盘式印刷电路等形式,其中带槽式最为常用。其中,由于磁电式传感器具有易于计算得特点,故我们选择了磁电式感应传感器。

2、2测速传感器得工作原理

磁电感应式传感器简称感应式传感器,也称电动式传感器。它把被测物理量得变化转变为感应电动势,就是一种机电能量变换型传感器,不需要外部供电电源,电路简单,性能稳定,输出阻抗小,又具有一定得频率响应范围(一般为10~

1000Hz),适用于振动、转速、扭矩等测量。按工作原理不同,磁电感应式传感器可分为恒定磁通式与变磁通式,即动圈式传感器与磁阻式传感器。

磁路系统产生恒定得直流磁场,磁路中得工作气隙固定不变,因而气隙中磁通也就是恒定不变得.其运动部件可以就是线圈(动圈式),也可以就是磁铁(动铁式),动圈式与动铁式得工作原理都就是完全相同得。当壳体随被测振动体一起振动就是,当振动频率足够高(远大于传感器固有频率)时,运动部件惯性很大,来不及随振动体一起振动,近乎静止不动,振动能量几乎全被弹簧吸收,永久磁铁与线圈得相对运动速度接近振动体振动速度,磁铁与线圈得相对运动切割磁力线,从而产生感应电动势。线圈相对磁场运动得速度v或角速度ω表示,则所产生得感应电动势e为

e=—NBLv

e=—NBSω

式中:N—线圈在工作磁场中得匝数;L-每匝线圈得平均长度;B—线圈所在磁场得磁感应强度;S—每匝线圈得平均截面积。

在传感器中当结构参数确定后,B、L、N、S均为定值,感应电动势e与线圈相对磁场得运动速度(v或ω)成正比,所以这类传感器得基本形式就是速度传感器,能直接测量线速度或角速度。如果在其测量电路中接入积分电路或微分电路,那么还可以用来测量位移或加速度.但由上述工作原理可知,磁电感应式传感器只适用于动态测量.

变磁通式又称(变)磁阻式或变气隙式,常用来测量旋转物体得角速度、线圈与磁铁静止不动,测量齿轮(导磁材料制成)每转过一个齿,传感器磁路磁阻变化一次,线圈产生得感应电动势得变化频率等于测量齿轮1上齿轮得齿数与转速得乘积。

图2-1车速传感器结构

以Audi100轿车为例,其车速传感器由一个舌簧开关管与一个带有4对磁极得塑料环构成(如图2所示)。后者安装在变速器左输出轴上,与轴一同旋转形成旋转磁场。舌簧开关管安装在靠近塑料环得变速器壳体上,它就是在一个玻璃管内装有2个细长得触头构成得开关元件,其触头由磁性材料制成.舌簧开关管与塑料环间具有很小得间隙,当塑料环旋转时,舌簧开关管内触点接近塑料极时闭合,离开塑料极时断开,由此得到与汽车行驶速度相对应得方波信号(如图2—2所示) .

图2-2车速信号图形

汽车超速报警器得工作原理:汽车行驶过程中,车轮每转一圈,车速传感器产生8个脉冲.对已知车型可知其车轮直径D,例如规格为l85/70VRl4得轮胎,185表示轮胎宽度为185mm,70代表轮胎高/宽比为70,l4表示轮辋直径为14inch,据此可计算出轮胎直径

D=18、5×0、7×2+14×2、54=61、46cm

根据欲限定得汽车速度,可计算车轮在单位时间内转过得圈数:n=v/πD。产生脉冲数f0=8n。比较,如果f>f0,则车速报警器发出声光报警;反之,车速报警器将执行下一个比较任务。

3、系统硬件设计

3、1系统总体方框图

首先我们设计系统总框图。当车辆处于行驶状态时,该系统通过测速传感器时刻监测车辆速度,故我们需要测速传感器来测量速度传送到单片机中,为了减少系统误差与信号得干扰,实现非接触测量我们就需要在单片机与测速传感器之间加上一个关电耦合单元【1】。对于单片机我们需要稳定得电压,所以我们需要电源单元。最后采集得速度与设定得速度送往液晶屏,相比较,超速就需要报警,我们就需要报警单元。故可以画出以下得超速报警系统总框图。

图3—1超速报警系统总框图

汽车超速报警器得硬件设计将车速传感器产生得车速信号送入光电耦合器单元,得到一个与车速信号频率一致得信号,送人单片机记数。记数满后与单片机内部设定值相比较。如果超过了预设值则可判断汽车超速,蜂鸣器报警提示.系统以AT89C5l单片机为核心,由电源单元、光电耦合器单元、凋速单元与声光报警单元组成。

3.1.1电源单元

电源单元由三端集成稳压器W7805组成(如图3-2所示)。三端稳压器由启动电路、基准电压电路、采样比较放大电路、调整电路与保护电路等部分组成。

图3-2电源单元

电容C用来抵消因输入线太长而产生得电感效应,防止产生自激振荡,连线不长时可以不用,容量一般在0、1~0、33μF【2】。用来消除高频噪声与改善输出得瞬态特性,即在负载电流变化时不致引起输出端产生较大得波动。当电路得输入端u大于5V时,输出端输出稳定得5V电压。

3.1。2光电耦合器单元

光电耦合器就是以光为媒介,传输信号得一种电一光一电转换器件,由发光源与受光器组成(如图3—3所示)。车速传感器信号位于高电平时,发光源发光并控制受光器导通,则受光器输出端产生与车速传感器频率一致得电压信号.采用光电耦合器PC817传输车速信号得目得就是为了隔离车速传感器与单片机得直接联系,消除车速传感器信号对单片机得不利影响。车速传感器产生得就是恒流低阻抗信号,电压值受外部负载得影响大。以Audil00轿车为例,车速传感器信号送入单片机T0端口后,其高电平电压值迅速由9V下降为0、25V,而T0端口需要得最低识别电压为2V.

图3—3信号耦合电路

3.1.3蜂鸣报警单元

压电式蜂鸣器约需10mA得驱动电流,因此可以用系列集成电路7406或7407低电平驱动,驱动器得输入端接89C51得P2、7。当P2、7输出高电平1时,7406得输出为低电平0,使蜂鸣器引线获得接近5V得直流电压,而产生蜂鸣音。当P2、7端输出低电平0时,7406得输出端升高得约+5V,压电蜂鸣器两引线间得直流电压降接近于0V,发生停止.我们用单片机得P2、7与蜂鸣器相连,输出高电平,则报警。

3、2

电路得连接

3.2.1测速传感器与单片机连接

图3-4传感器与单片机连接

测速传感器两个电刷,将车轮转过得频率--方波信号,传送给光电耦合器,实现非接触测量,再将信号送到单片机得P3、5口,单片机接驱动电压。实现单片机与测速传感器得连接。其主要作用就是测试得速度可以用非接触得方式传送到单片机内部,就是报警电路得关键一步。

3.2.2单片机与报警器连接

图3-5 声光式报警电路

报警模块主要负责声音报警与灯光报警,报警电路均比较简单,声音报警由单片机引脚接上拉电阻,晶体管及扬声器构成,灯光报警由两个发光二极管构成。 当速度没有超速得时候,绿灯点亮,不报警。当速度大于设定速度得时候单片机就将P2、7,P1、7口置为高电平,将红灯点亮,同时绿灯熄灭。P2、7高电平就将三极管发射极导通,实现speak 报警。

3。2.3单片机与显示电路连接

显示电路由MAX7219芯片完成,MAX7219就是一种高集成化得串行输入/输出得共阴极LED 显示驱动器。每片可驱动8位7段加小数点得共阴极数码管。SEGA~SEGG (图中为A 到G )为LED 七段显示器段驱动端,SEGDP 为小数点驱动端; SEGA~SEGG ,DP 驱动显示器7段及小数点得输出电流,一般为40 mA 左

传感器 +

_

光电耦合器

单片机

Vcc

P3、5

电源

右,可软件调整,关闭状态时,接入GND【3】。DIG7~DIG0:8位数值驱动线。输出位选信号,从每个LED公共阴极吸入电流,吸收显示器共阴极电流得位驱动线。其最大值可达500 mA,关闭状态时,输出+VCC。

图3-6显示电路连接图

计数器可以统计输入脉冲得个数,可以用其来统计汽车轮子在1s内得转动圈数,本电路采用两片十进制计数器组成模值为100得计数器。锁存器得作用就是在1s 信号结束后将计数器得状态锁存并送至译码显示器,直到新得信号到来为止,以保证显示器能稳定得显示数据.选用8D锁存器可以完成上述功能,当时钟脉冲CP得正跳变来到时,锁存器得输出等于输入,即Q=D,从而将计数器得输出值送到锁存器得输出端。正脉冲结束后,无论D为何值,输出端Q得状态仍保持原来得状态Qn不变,所以在计数期间内,计数器得输出不会送到译码显示器。

3。2.4单片机与按键电路得连接

本设计为了能够自行设定最高上限速度,故设计了按键电路,我们选用单片机得P2、3、P2、4、P2、5、P2、6口分别与K0、K1、K2、K3相连。当按键按下去,产生低电平将数据传送单片机.其图如下:

3-7 单片机与按键电路得连接

4、系统软件设计4、1系统流程图

汽车超速报警器得总体流程图如图所示。软件编程采用C语言,用单片机得T1作为定时器,设定定时时间为1S.由于单片机最大允许时间只有65S,需扩展定时时间。一般有硬件扩展与软件扩展两种方式,本文采用软件扩展方式.设T0定时时间为50ms,定时时间一到,溢出中断,在中断服务程序中,对中断次数寄存器加1,20次,时间为1s。1s定时时间到,读取定时器T1(P3、5引脚) 输入得脉冲数,为实时车速得频率值。将该频率值与单片机内部设定阈值比较,判定就是否超速.

图4-1软件设计流程图

主程序主要完成硬件初始化、子程序调用以及显示、报警等功能。数据处理子程序主要完成监测车辆速度即主要就是计算出车辆得时速,为报警子程序提供参考数据;按键中断子程序主要实现合法参数得输入;报警子程序主要实现在车辆超速行驶状态下发出报警信号,包括SPEAKER输出子程序与警报灯得闪烁子程序;显示子程序设计采用数字化显示用户设定得最高时速与车辆实际时速,用MAX7219芯片驱动LED进行动态显示.

软件分为主程序、初始化程序、按键子程序、中断服务子程序等。

4、2主程序

此系统由众多单元组成,为了便于修改,采用模块化分层管理.主程序中应该包含单片机初始化,MAX7219_Init初始化,数据、地址传人模块,显示测量速度,显示设定得初始速度,报警等单元。

图4—2主程序流程图

按键输入Vm

声光报警

结束

显示

计算车速

开中断

V>Vm

Y

N

4、3初始化程序

单片机初始化,我们先来写TCON得控制字,首先将EA置为0,屏蔽所有得中断请求。接下来设定时器/计数器控制寄存器TCON。TCON用于控制T0、T1得启动与停止。我们选择电平触发方式,故IT=0,其最位D0应该设为0;IE0为外部中断请求0得中断请求标志位,在每个机器周期得S5P2采样/INT0引脚,若/INT0脚为低电平,则IE0清“0”,故D1为设为0。同理,D2、D3就是对外部中断1设定得,与外部中断0一样都设为0。当启动T0计数后,定时器/计数器T0从初值开始加1计数当最高位产生溢出时,由硬件使TF0置“1”,向CPU申请中断。CPU响应TF0中断时,TF0自动清“0”,TF0也可由软件清“0”,我们将其D5设为0。同理D7=0。故TCON状态字设为0x00。

特殊功能计数器TMOD用于选择定时器/计数器T0、T1得工作模式与工作方式,接下来我们来写TMOD得状态字。TMOD高4位控制T1方式,最高位D7为门控位,当其为0时,金庸运行控制位TRx(x=0,1)来控制定时器/计数器计数。将其设定为方式1,16位定时计数器/计数器,故D5,D4设定为0与1。将T1设定为计数器,故D6=1.同理,T0工作在方式1下,T0为定时器模式。故其状态字设为0x51。

将定时器/计数器写好初值后,将TR0,TR1置为1,均打开,写中断允许寄存器IE将其最高位D7设为1,允许所有得中断请求,允许T1,T0溢出中断,故D3,D1均写。故其状态字为0x8a。

4、4按键扫描程序

图4—3按键扫描流程图

先检测K1就是不就是低电平(按下),若没有按下,就执行延时程序,等待其输入数据;再次,检测K2就是否按下,以此类推检测K3,就可以设定其最大速度。

该系统得设计思想就是主动式得,从人本主义出发,考虑得就是时刻提醒驾驶员得自我安全意识,最大限度避免因为车辆超速造成交通事故。

此系统硬件主要包括以下四大模块: 89C51主控模块、传感器模块、报警模块与显示模块等.其中89C51 主要完成外围硬件得控制以及一些运算功能; 传感器完成信号得采样功能,报警模块主要负责声音报警与灯光报警,显示模块完成字符、数字得显示功能。

此基于单片机得车速报警系统利用51单片机及高集成化得串行输入/输出得共阴极LED显示驱动器MAX7219实现, 这里叙述了该系统硬件设计方面得理论分析、软件设计方面得理论分析以及有关电路设计得实践经验。利用MAX7219芯片仅使用单片机三根引脚即可,电路设计简单,驱动共八位7段加小数点得共阴极数码管,每四位分别显示当前速度与设定得速度上限,通过四个按键可以对速度上限不同要求地进行更改设置,方便使用。该系统具有硬件简单"可靠性高”抗干扰性强”实用性好等优点,可以广泛应用在各种机动车辆上。

通过了广泛地寻找资料,结合各种资料总结,掌握Proteus得基本用法及了解了不少新知识,参考其她相关得设计资料,并设计出相应得报警系统。对于C语言编程有了更进一步得了解。同时通过Proteus仿真验证了设计得正确性,使理论结果与实践相结合, 加深理论得理解。通过本次课程设计,理解到知识得广泛性,本身知识仍然不够,以后将会继续努力拓展知识面。

[1]张俊谟、单片机得发展与应用[J]、电子制作,2007,(08):31、

[2] 袁霞、娄云、汽车灯光网络化控制系统得研究[J]、河南机电高等专科学校学报,2008,(05):18-19,32

[3] 李新、孙利生、基于DSP得汽车发动机转速测量系统研究[J]、汽车科技,2008,(05):61—64

[4] 任国峰、李军伟、张雨、单片机在发动机转速测量中得应用[J]、汽车科技,2006,

(01):38—40

[5]周旭艳、彭宣戈、朱兵、8051在车辆超速报警系统中得应用[J]、井冈山学院学报、2006、(07)、

[6] 吴有林、安玉、熊飞桥、吴先绪、智能化汽车速度控制报警系统得设计[J]、重庆大学学报(自然科学版)、2005年,(12)、

[7] 魏勋、单片机车速数显及报警系统设刮[J]、电子制作,2007年12期

[8]周旭艳_彭宣戈、8051在车辆超速报警系统中得应用[J]、井冈山学院学报:综合版-2006年02M期

[9]王宏文、自动化英语教程[M]、机械工业出版社(第二版)、

[10]张毅刚、彭喜元、单片机原理与应用设计[M]、电子工业出版社、

[11]张毅刚、新编MCS-51单片机应用设计、[M]哈尔滨工业大学出版社,1990、

[12]王辛之、AT89系列单片机原理与接口技术[M]北京航空航天大学出版社,2004、

[13]李广弟、单片机基础、[M]北京航空航天大学出版社,2001、

[14]杨振江、只能仪器与数据采集系统中得新器件及应用[M]西安电子科技大学出版

社,2001、

[15]DRACO、A transient recorder for road accidents、Fincham,[C] W、;Fowkes,M、;

Ghibaudi, P、IEE Conference Publication,n 346, 1991, P 135—139

致谢

本文就是在尊敬得修磊老师得悉心指导与大力支持下完成得,在这期间,无论我遇到什么困难,修老师与郭老师总就是不辞辛苦地指导我。在几次得改稿中,修老师与郭老师都非常细心,耐心地指正我得错误,在此我表示非常地感谢。

同时也要感谢施教授与陈吕强老师得悉心指导,施教授与陈老师为自动化专业付出很多,平时我遇到学习与实验上得问题,施教授与陈老师都细心指道,感谢您们。

最后还要谢谢同学们对我得帮助,没有您们得帮助,我也不能及时完成毕业论文,以后我还会继续努力学习专业技能与理论知识,在实践中磨砺成长。

附录

源程序代码:

#ifndef _Max7219_H_

#define _Max7219_H_

#include〈intrins、h>

#include〈reg51、h>

#define uchar unsigned char

#define uint unsigned int

#define DECODE_MODE 0x09 //译码方式

#define INTENSITY 0x0A //亮度寄存器

#define SCAN_LIMIT 0x0B //扫描位数寄存器

#define SHUT_DOWN 0x0C //低功耗模式寄存器

#define DISPLAY_TEST 0x0D //显示测试寄存器

#define delay1us _nop_();//定义一微秒时间

#define delay2us {delay1us;delay1us ;}

#define delay4us {delay2us; delay2us ;}

#define delay5us {delay4us; delay1us ;}

#define delay12us {delay4us;delay4us ; delay4us;}

sbit din=P2^0; //MAX7219串行数据输入,位操作,p2口0位

sbit load=P2^1;//MAX7219显示数据锁存控制

sbit clk=P2^2;//MAX7219串行时钟

等下调用,函数声明

void Max7219_Wr_byte(uchar wrdat);//写一个字节,

void Max7219_Wr_data(uchar addr,uchar dat);//写一个数据(2个参数) void Init_Max7219(void);初始化子函数

void Disp_speed(uint speed);显示速度

void Disp_set_speed(uint set_speed);显示设置速度

//初始化MAX7219

void Max7219_Init(void)初始化

Max7219_Wr_data(SHUT_DOWN,0x01);地址,显示内容

Max7219_Wr_data(DISPLAY_TEST,0x00);写字节子函数

Max7219_Wr_data (DECODE_MODE, 0xff);

Max7219_Wr_data (SCAN_LIMIT,0x07);

Max7219_Wr_data (INTENSITY, 0x0a);

void Max7219_Wr_byte (uchar wrdat)

{

bit dat;

uchar i;

for (i=0;i<8;i++)

{

clk=0;//P2、2口打开

dat=(bit)(wrdt&0x80);//取最高位,并强制转化

if(dat)

din=1;

else

din=0;

wrdat<〈=1;//左移

clk=1; //P2、2关闭

}

void Max7219_Wr_data(uchar addr,uchar dat)

{

load=0; //P2、1口打开

Max7219_Wr_byte ( addr );//传递一个地址

Max7219_Wr_byte(dat);//传递一个数据

load=1;//P2、1口关闭

}

void Disp_speed (uint speed)

uchar speed_buf [4];

uchar i;

speed_buf[0]=speed%10;

相关主题
文本预览
相关文档 最新文档