毕业论文--基于AT89S52单片机的自动停车收费系统设计.doc

上传人:e****s 文档编号:85469133 上传时间:2023-04-11 格式:DOC 页数:36 大小:123KB
返回 下载 相关 举报
毕业论文--基于AT89S52单片机的自动停车收费系统设计.doc_第1页
第1页 / 共36页
毕业论文--基于AT89S52单片机的自动停车收费系统设计.doc_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《毕业论文--基于AT89S52单片机的自动停车收费系统设计.doc》由会员分享,可在线阅读,更多相关《毕业论文--基于AT89S52单片机的自动停车收费系统设计.doc(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、毕业论文-基于AT89S52单片机的自动停车收费系统设计 摘 要介绍基于单片机的一款停车场自动停车收费管理系统,该自动停车系统采用比传统停车计费方式更优越的红外线检测计费方式,采用红外线检测计费方式,所需存储容量小具备了自动开启关闭大门功能、自动计费功能、显示功能 显示停车场状况 、查询功能,而且收费方式可以调节,使系统更具灵活性。该自动停车系统操作简单,价格低廉,安装调试方便,很好地解决了临时停车场的管理收费问题整个自动停车收费管理系统操作简单、价格低廉、安装调试方便能够满足管理临时停车场的要求。本系统的实际开发使用将大大节省临时停车场的管理费用及人手,提高临时停车场的利用效率此外,该自动停

2、车收费管理系统还可以方便地实现信息加密和各种功能扩展,通过改良可成为通用型停车场收费管理统。ABSTRACTThe management system introducing that one money parking lot automation motor stoppage of monolithic machine charges owing to AT89S52, is the system parking voluntarily chargings turn to adopt the plan parking ratio tradition to waste more advant

3、ageous way infrared ray detecting plan fee way , adopt infrared ray to check plan fee way, required memory capacity has been small , have had the function situation demonstrating parking lot , inquiry function opening automatically closing the entrance door function , the automation meter fee functi

4、on , showing, and charge way is not bad adjust , make flexibility have more systematically. That automation motor stoppage charges systematically handling a simplicity , price is cheap , the installation debugging goes to the lavatory, problem having resolved charge for provisional parking lot admin

5、istration very good. Charge for entire automation motor stoppage manages the system operation simplicity , price is cheap , assembles a debugging to go to the lavatory. Be able to satisfy the call for managing provisional parking lots. Originally systematic reality develops administration cost and h

6、and being put into use will economize provisional parking lot greatly , improves provisional parking lot utilization ratio. Besides, be the management system parking voluntarily chargings turn to be able to realize encrypted and various information function expansion conveniently, charge for parking

7、 lot manages system by improving but becoming the type being applied or used universally.KeyWords:Monolithic machine; Parking lot; Charge for automation motor stoppage is systematic目 录1引言12课程任务32.1 系统框架32.2 工作流程43主要的功能元器件介绍53.1元器件介绍5 74LS1385 LM35863.2 LED显示局部7 LED显示器74单片机AT89S52简介84.1 AT89S52的引脚及功能

8、8 I/O口:9 P3口的第二功能104.2 特殊功能存放器10 看门狗定时器11 定时器 2125程序设计165.1 如何进行程序设计165.2 程序流程图165.3 系统程序17结 论24参考文献25附录一: 电路原理图26致 谢27引言随着经济的高速增长,汽车的社会拥有量不断增加,越来越多的人参加了购车行列汽车停车场的数量将随之增加,规模不断扩大,这给停车场的车辆管理 停车效率、停车平安 提出了新的挑战。汽车数量的剧增和停车场地的相对短缺,使得停车场的管理收费问题凸现。特别是大型超市的临时停车场管理收费更加困难。该系统操作简单,价格低廉,安装调试方便,很好地解决了临时停车场的管理收费问题

9、目前的停车场收费管理系统通常采用以下种计费方式 1 摄像计费方式:在停车场出入口分别放置一台摄像机,通过摄像机摄下汽车车牌号码,送单片机或者电脑处理。再通过单片机计算停车时间和费用,并控制大门开启。该方案信息量大,要求具有较大的存储容量。软件设计复杂,本钱高。 2 非接触IC卡自动计时停车收费硬件组成上,发卡设备直接由上位机控制,所以无需键盘、LCD模块等硬件,出口设备包含口设备和发卡设备所有的硬件,它们的设计只需在出口设备硬件根底上去掉相应模块,所以在后面的硬件设计介绍中以出口设备为代表三种设备的不同功能由软件编程实现,出口程序经过精简和简单的修改可得到口设备程序,所以在软件设计中主要讨论了

10、出口设备和发卡设备的程序流程。等待射频IC卡的请求、按键请求或串13通信请求。有任一种请求那么进入相应处理程序,并且处理程序返回之前。屏蔽其它两种请求。IC卡请求,验证用户IC合法性,假设为非法卡那么放弃IC卡请求,假设为合法卡,从IC卡中获取当前时间和停车起始时间,计算出停车费用,从IC卡获取用户余额。假设判断消费金额超过用户余额那么蜂呜报警并在LCD中提示。否那么将扣除消费金额并将余额写入IC卡中,最后将用户序列号和消费金额存储到,上位机根据存储器中用户消费金额更新用户余额。串口通信请求,出口设备与上位机连接时根据上位机命令可进行存储器数据上传、设置设备时间等操作。向挡车闸电机控制器发出开

11、关信号。发卡设备主程序流程开机后对读写卡模块和串口进行初始化然后等待上位机命令假设为“发新卡命令接着接收上位机发来的新用户数据,当在有效范围内检测到合法卡时将数据写入IC卡内扇区2中相应位置中假设为“充值命令,将有效范围内IC卡的用户信息传给上位机,然后等待上位机发来“写卡命令收到“写卡命令,紧接着接收上位机发送的数据,然后将接收到的数据写入IC卡中。刷卡计费方式:车主到指定地点办理IC卡,通过打卡进出停车场,并通过IC卡缴费。但该方式更适合于有长期固定停放车位的停车场传统的停车计费方式存在着一些缺乏,针对这些缺乏,设计了一个采用红外线检测单片机计费方式的自动停车收费管理系统,为临时停车场提供

12、了一个操作简便、价格低廉,而且行之有效的管理方法。本系统的实际开发使用将大大节省临时停车场的管理费用及人手,提高临时停车场的利用效率。系统采用红外线检测计费方式,可以实现自动开启关闭大门功能、自动计费功能、显示功能 显示停车场状况 、查询功能,而且收费方式可以调节,使系统更具灵活性。图2-1 停车场自动停车收费管理系框统图 1 红外线检测模块:安装在车场入口,用于检测汽车的场大门送单片机作相应处理。红外线检测模块由红外线发射电路和红外线接收电路组成 2 大门控制模块:与红外线检测模块协作,执行停车场大门的功能。 3 单片机控制中心:采用89S52单片机系统,它是本系统的核心局部,主要功能是监控

13、键盘状态处理键盘输入的操作信息;监控停车场状态,控制大门开闭,有车驶入停车位后,汽车驶出停车位后,将车换算为停车费用信息控制显示器按要求显示各种。 4 停车场状态显示模块:显示停车场状态信号。绿灯表示有空位红灯表示场内车位全满,不允许汽车进入。 5 数码管显示模块:显示停车的各种信息,包括北京时间、停车位、空位数、停车费用、收费标准和操作提示等内容。本模块采用个共阳数码管静态显示方式,节约了本钱。 6 操作键盘模块:通过键盘进行多种人操作,包括显示、查询各类信息,修改收费标准,北京时间显示内容。其中,操作键盘模块、数码管显示模块、停车场状态显示模块和单片机控制中心合称为中心控制电路。当汽车停车

14、场时,红外线检测模块将通知单片机有汽车出,单片机再根据停车场的状态控制停车场大门的开启关闭,停车费用,并送显示器显示,处理键盘的显示、查询、修改。停车收费标准为n元。该系统还可以充当时钟。主要的功能元器件介绍该系统主要有以下元器件构成,下面对各器件进行下介绍,让我们对各个器件有所了解,有所认识。本节将介绍74LS138、LM358和数码管74LS47的根本常识和根本功能。 74LS138 图3-1 38译码器原理逻辑符号及管脚排布74LS138为3线8线译码器,共有两种线路结构型式,其工作原理如下:当一个选通端G1为高电平,另两个选通端/ G2A 和/ G2B 为低电平时可将地址端A、B、C的

15、二进制编码在一个对应的输出端以低电平译出。利用G1、/ G2A 和/ G2B 可级联扩展成24译码器;假设外接一个反相器还可级联扩展成32线译码器。假设将选通端中的一个作为数据输入端时,74LS138还可作数据分配器LM358内部包括有两个独立的、高增益、内部频率补偿的双运算放大器,适合于电源电压范围很宽的单电源使用,也适用于双电源工作模式,在推荐的工作条件下,电源电流与电源电压无关。它的使用范围包括传感放大器、直流增益模组,音频放大器、工业控制、DC增益部件和其他所有可用单电源供电的使用运算放大器的场合。LM358的封装形式有塑封8引线双列直插式和贴片式。特性内部频率补偿。直流电压增益高 约

16、100dB 。单位增益频带宽 约1MHz 。低功耗电流,适合于电池供电。电源电压范围宽:单电源 330V ;双电源 1.515V 。低输入偏流。低输入失调电压和失调电流。共模输入电压范围宽,包括接地。差模输入电压范围宽,等于电源电压范围。参数输入偏置电流45nA输入失调电流50nA输入失调电压2.9mV输入共模电压最大值VCC1.5V,共模抑制比80dB电源抑制比100dB图DIP塑封引脚图引脚功能LED;液晶显示器,简称LCD;荧光管显示器。而发光二极管显示又分为固定段显示和可以拼装的大型字段显示,此外还有共阳极和共阴极之分等。 LED显示器图3-3 数码管的外形和引脚LED显示器是由发光二

17、极管显示字段组成的显示块,有7段和“米字段之分。这种显示块有共阳极和共阴极两种。此外,显示块中还有一个圆点型发光二极管用于显示小数点。通过发光二极管亮、暗的不同组,可以显示多种数字、字母以及其他符号。LED显示块中的发光二极管共有两种连接方法。 1 共阳极接法发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接5V单片机AT89S52简介单片微型计算机SCMC Single Chip Microcomputer 简称单片机。它是把组成微型计算机的各功能部件:中央处理器CPUCentral Processing UnitI/O Input/Output 接口电路、定时器/计数器以及串行通讯接口

18、等部件制作在一块集成芯片中,构成一个完整的微型计算机。由于它的结构与指令功能都是按照工业控制要求设计的,故又叫单片微控制器 4.1 AT89S52的引脚及功能 图4-1 AT89S52的引脚图AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。AT89S52具有以下标准功能:8k

19、字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16 位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S52采用40引脚的双列直插封装DIP方式。 1 主电源引脚Vcc和VssVcc40脚:接5V电压;Vss20脚:接地。 2 外接晶体引脚XTAL1和XTAL2XTAL1接外部晶

20、体的一个引脚。在单片机内部,它是构成片内振荡器的反相放大器的输入端。当采用外部振荡器时,该引脚接收振荡器的信号,既把此信号直接接到内部时钟发生器的输入端。XTAL2接外部晶体的另一个引脚。在单片机内部,它是上述振荡器的反相放大器的输出端。采用外部振荡器时,此引脚应悬浮不连接。选用12MHz频率的晶体,允许输入的脉冲频率为500kHz。电容的大小范围为20pF40pF。 I/O口:P0 口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具

21、有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。P1 口:P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL 逻辑电平。对P1端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。此外,定时器/计数器2的外部计数输入P1.0/T2和定时器/计数器2的触发输入P1.1/T2EX,在flash编程和校验时,P1口接收低8位地址字节。P2 口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。

22、对P2端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。在访问外部程序存储器或用16位地址读取外部数据存储器例如执行MOVX DPTR时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址如MOVX RI访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。P3 口:P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL 逻辑电平。对P3端口写“1时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作

23、为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。P3口亦作为AT89S52特殊功能第二功能使用,在flash编程和校验时,P3口也接收一些控制信号。 P3口的第二功能RST: 复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊存放器AUXR 地址8EH 上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/PROG:地址锁存控制信号ALE是访问外部程序存储器时,锁存低8位地址的输出脉冲。在flash编程时,此引脚PROG也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的

24、固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1,ALE操作将无效。这一位置“1,ALE仅在执行MOVX或MOVC指令时有效。否那么,ALE将被微弱拉高。这个ALE 使能标志位地址为8EH的SFR的第0位的设置对微控制器处于外部执行模式下无效。PSEN:外部程序存储器选通信号PSEN是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。EA/VPP:访问外部程序存储器控制信号。为使

25、能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。4.2 特殊功能存放器特殊功能存放器 SFR 的地址空间并不是都被定义了。片上没有定义的地址是不能用的。读这些地址,一般将得到一个随机数据;写入的数据将会无效。用户不应该给这些未定义的地址写入数据“1。由于这些存放器在将来可能被赋予新的功能,复位后,这些位都为“0。定时器2 :存放器T2CON 和T2MOD 包含定时器2的控制位和状态位,存放器对RCAP2H和RCAP2L是定时器2的捕捉/自动重载存放器。中断存放器:各中断允许位在IE存放器中,六个中断源的两个优先级也可在IE中设置。存

26、储器结构:MCS-51器件有单独的程序存储器和数据存储器。外部程序存储器和数据存储器都可以64K寻址。程序存储器:如果EA引脚接地,程序读取只从外部存储器开始。对于AT89S52,如果EA接VCC,程序读写先从内部存储器地址为0000H1FFFH开始,接着从外部寻址,寻址地址为:2000HFFFFH。数据存储器:AT89S52有256字节片内数据存储器。高128字节与特殊功能存放器重叠。也就是说高128字节与特殊功能存放器有相同的地址,而物理上是分开的。当一条指令访问高于7FH的地址时,寻址方式决定CPU访问高128字节RAM还是特殊功能存放器空间。直接寻址方式访问特殊功能存放器SFR。例如,

27、下面的直接寻址指令访问0A0HP2口存储单元MOV 0A0H , #data使用间接寻址方式访问高128字节RAM。例如,下面的间接寻址方式中,R0内容为0A0H,访问的是地址0A0H的存放器,而不是P2口它的地址也是0A0H。MOV R0 , #data堆栈操作也是简介寻址方式。因此,高128字节数据RAM也可用于堆栈空间。 看门狗定时器WDT是一种需要软件控制的复位方式。WDT由13位计数器和特殊功能存放器中的看门狗定时器复位存储器WDTRST构成。WDT在默认情况下无法工作,为了激活WDT,用户必须向WDTRST存放器地址为0A6H的SFR依次写入0E1H和0E1H。当WDT激活后,用户

28、必须向WDTRST写入01EH和0E1H喂狗来防止WDT溢出。当计数到达8191 1FFFH 时,13位计数器将会溢出,这将会复位器件。晶振正常工作、WDT激活后,每一个机器周期WDT都会增加。为了复位WDT,用户必须向WDTRST写入01EH 和0E1HWDTRST是只读存放器。WDT计数器不能读或写。当WDT计数器溢出时,将给RST引脚产生一个复位脉冲输出,这个复位脉冲持续96个晶振周期TOSC,其中TOSC 1/FOSC。为了很好地使用WDT,应该在一定时间内周期性写入那局部代码,以防止WDT复位。掉电和空闲方式下的WDT:在掉电模式下,晶振停止工作,这意味这WDT也停止了工作。在这种方

29、式下,用户不必喂狗。有两种方式可以离开掉电模式:硬件复位或通过一个激活的外部中断。通过硬件复位退出掉电模式后,用户就应该给WDT喂狗,就如同通常AT89S52复位一样。通过中断退出掉电模式的情形有很大的不同。中断应持续拉低很长一段时间,使得晶振稳定。当中断拉高后,执行中断效劳程序。为了防止WDT在中断保持低电平的时候复位器件,WDT直到中断拉低后才开始工作。这就意味着WDT应该在中断效劳程序中复位。为了确保在离开掉电模式最初的几个状态WDT不被溢出,最好在进入掉电模式前就复位WDT。在进入待机模式前,特殊存放器AUXR的WDIDLE位用来决定WDT是否继续计数。默认状态下,在待机模式下,WDI

30、DLE0,WDT继续计数。为了防止WDT在待机模式下复位AT89S52,用户应该建立一个定时器,定时离开待机模式,喂狗,再重新进入待机模式。 定时器 2定时器2是一个16位定时/计数器,它既可以做定时器,又可以做事件计数器。其工作方式由特殊存放器T2CON中的C/T2位选择。定时器2有三种工作模式:捕捉方式、自动重载向下或向上计数和波特率发生器。工作模式由T2CON中的相关位选择。定时器2有2个8位存放器:TH2和TL2。在定时工作方式中,每个机器周期,TL2存放器都会加1。由于一个机器周期由12个晶振周期构成,因此,计数频率就是晶振频率的1/12。在计数工作方式下,存放器在相关外部输入角T2

31、发生1至0下降沿时增加1。在这种方式下,每个机器周期的S5P2期间采样外部输入。一个机器周期采样到高电平,而下一个周期采样到低电平,计数器将加1。在检测到跳变的这个周期的S3P1期间,新的计数值出现在存放器中。因为识别10的跳变需要2个机器周期24个晶振周期,所以,最大的计数频率不高于晶振频率的1/24。为了确保给定的电平在改变前采样到一次,电平应该至少在一个完整的机器周期内保持不变。捕捉方式:在捕捉模式下,通过T2CON中的EXEN2来选择两种方式。如果EXEN2 0,定时器2时一个16位定时/计数器,溢出时,对T2CON的TF2标志置位,TF2引起中断。如果EXEN2 1,定时器2做相同的

32、操作。除上述功能外,外部输入T2EX引脚P1.11至0的下跳变也会使得TH2和TL2中的值分别捕捉到RCAP2H和RCAP2L中。除此之外,T2EX的跳变会引起T2CON中的EXF2置位。像TF2一样,T2EX 也会引起中断。自动重载:当定时器2工作于16位自动重载模式,可对其编程实现向上计数或向下计数。这一功能可以通过特殊存放器T2MOD中的DCEN向下计数允许位来实现。通过复位,DCEN 被置为0,因此,定时器2 默认为向上计数。DCEN 设置后,定时器2就可以取决于T2EX向上、向下计数。可编程时钟输出如图4-2 所示,可以通过编程在P1.0引脚输出一个占空比为50%的时钟信号。这个引脚

33、除了常规的I/O角外,还有两种可选择功能。它可以通过编程作为定时器/计数器2的外部时钟输入或占空比为50%的时钟输出。当工作频率为16MHz时,时钟输出频率范围为61Hz到4Hz。为了把定时器2配置成时钟发生器,位C/T2T2CON.1必须清0,位T2OET2MOD.1必须置1。位TR2T2CON.2启动、停止定时器。时钟输出频率取决于晶振频率和定时器2捕捉存放器RCAP2H,RCAP2L的重载值,如公式所示:时钟输出频率 4-1在时钟输出模式下,定时器2不会产生中断,这和定时器2用作波特率发生器一样。定时器2也可以同时用作波特率发生器和时钟产生。不过,波特率和输出时钟频率相互并不独立,它们都

34、依赖于RCAP2H和RCAP2L。图4-2 定时器2时钟输出模式中断:AT89S52有6个中断源:两个外部中断INT0和INT1,三个定时中断定时器0、1、2和一个串行中断。这些中断如图9所示每个中断源都可以通过置位或去除特殊存放器IE中的相关中断允许控制位分别使得中断源有效或无效。IE还包括一个中断允许总控制位EA,它能一次禁止所有中断。对于AT89S52,IE.5位也是不能用的。用户软件不应给这些位写1。它们为AT89系列新产品预留。定时器2可以被存放器T2CON中的TF2和EXF2的逻辑触发。程序进入中断效劳后,这些标志位都可以由硬件清0。实际上,中断效劳程序必须判定是否是TF2或EXF

35、2激活中断,标志位也必须由软件清0。定时器0和定时器1标志位TF0和TF1在计数溢出的那个周期的S5P2被置位。它们的值一直到下一个周期被电路捕捉下来。然而,定时器2的标志位TF2在计数溢出的那个周期的S2P2被置位,在同一个周期被电路捕捉下来。晶振特性:如图4-3所示,AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端。石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器。从外部时钟源驱动器件的话,XTAL2可以不接,而从XTAL1接入。由于外部时钟信号经过二分频触发后作为外部时钟电路输入的,所以对外部时钟信号的占空比没有其它要求,最长低电

36、平持续时间和最少高电平持续时间等还是要符合要求的。图4-3 中断源图4-4 内部振荡电路连接图空闲模式在空闲工作模式下,CPU处于睡眠状态,而所有片上外部设备保持激活状态。这种状态可以通过软件产生。在这种状态下,片上RAM和特殊功能存放器的内容保持不变。空闲模式可以被任一个中断或硬件复位终止。由硬件复位终止空闲模式只需两个机器周期有效复位信号,在这种情况下,片上硬件禁止访问内部RAM,而可以访问端口引脚。空闲模式被硬件复位终止后,为了防止预想不到的写端口,激活空闲模式的那一条指令的下一条指令不应该是写端口或外部存储器。掉电模式在掉电模式下,晶振停止工作,激活掉电模式的指令是最后一条执行指令。片

37、上RAM和特殊功能存放器保持原值,直到掉电模式终止。掉电模式可以通过硬件复位和外部中断退出。复位重新定义了SFR 的值,但不改变片上RAM 的值。在VCC未恢复到正常工作电压时,硬件复位不能无效,并且应保持足够长的时间以使晶振重新工作和初始化。程序存储器的加密位AT89S52有三个加密位不可编程U和可编程获得下表所示的功能。加密位1LB1编程后,EA引脚的逻辑值被采样,并在复位期间锁存。如果器件复位,而没有复位,将锁存一个随机值,直到复位为止。为了器件功能正常,锁存到的EA值必须和这个引脚的当前逻辑电平一致。程序设计5.1 如何进行程序设计程序设计就是用计算机所能接受的语言把所需解决问题的步骤

38、逐一描述出来,也就是编制计算机的程序,在设计应用系统时,软件的编制是重要环节。软件的质量直接影响整个系统功能的实现。应用程序的设计因系统而异,但程序设计总是有共同特点及其规律的。在编写程序时,采取如下几个步骤: 1 分析问题,明确所要解决问题的要求,将软件分成假设干个相对独立的局部。根据功能关系和时序关系,设计出合理的软件总体结构。 2 定程序框图,即根据所选择的计算方法制定框图,这不仅是程序设计的一个重要组成,而且是决定成败的关键局部。 3 合理分配系统资源,包括定时器/计数器、中断、堆栈等。分配好单元后,进一步将程序框图画成详细的操作流程。 4 根据程序的流程图和指令系统编写出程序。注意在

39、程序的有关位置处写上功能注释,提高程序的可读性。 5 程序调试。通过编辑软件编辑出的源程序,必须用编译程序汇编后生成目标代码。如果源程序有语法错误,需修改源文件后继续编译,直到无语法错误为止,然后利用目标代码通过仿真器进行程序调试,排除设计和编程中的错误直到成功。 6 程序优化。使各功能程序模块化,子程序化,缩短程序的长度,加快运算速度和节省数据存储空间,减少程序执行的时间。5.2 程序流程图本单片机控制中心的程序采用C语言编写,运行效率较高。其主要程序有:主循环程序:用于内部RAM和各种中断的设置,不断扫描操作按键,做出相应操作,并送显示器显示。根据系统要求,主循环程序的流程如图5-1所示。

40、按键调整程序:可以进行秒调整、分调整、小时调整和停车费用调整。切换显示子程序:键盘上的返回键可以切换显示北京时间、空位数、停车信息 包括剩余的停车位、已停车位数、总停车数量、停车费用 。显示停车信息时,如果不能同时显示全部内容,可通过按下切换键切换显示。初始化时是显示北京时间。时钟中断程序:系统时钟采用单片机内部时钟,该程序将时钟设置为24小时制。图5-1 程序流程图5.3 系统程序#include #define uint unsigned int#define uchar unsigned charint n,z,shou_fei;char shi,fen,miao;sbit P1_0 P

41、10; /进车门红灯sbit P1_1 P11; /进车门绿灯sbit P1_2 P12; /出车门指示灯sbit P1_3 P13; /进车检测位sbit P1_4 P14; /出车检测位sbit P0_1 P01; /收费控制位sbit P0_2 P02; /+sbit P0_3 P03; /-sbit P0_4 P04; /时控制位sbit P0_5 P05; /分控制位sbit P0_6 P06; /秒控制位sbit P0_7 P07; /功能选择控制位/*延时函数*/void delay uint i while i- ; /*1ms延时函数*/void delay1ms uint

42、j uint a,b; for a 0;a j;a+ for b 0;b 1000;b+ tingche ; /*按键函数*/anjian if P0_4 0 /时调整 while 1 shijian ; if P0_2 0 while P0_2 0 shijian ; shi+; if shi 24 shi 0; if P0_3 0 while P0_3 0 shijian ; shi-; if shi 0 shi 23; if P0_1 0 while P0_1 0 shijian ; break; if P0_5 0 /分调整 while 1 shijian ; if P0_2 0 wh

43、ile P0_2 0 shijian ; fen+; if fen 60 fen 0; if P0_3 0 while P0_3 0 shijian ; fen-; if fen 0 fen 59; if P0_1 0 while P0_1 0 shijian ; break; if P0_6 0 /秒调整 while 1 shijian ; if P0_2 0 while P0_2 0 shijian ; miao+; if miao 60 miao 0; if P0_3 0 while P0_3 0 shijian ; miao-; if miao 0 miao 59; if P0_1 0

44、 while P0_1 0 shijian ; break; /*时间显示函数*/shijian P2 miao%10+0x00+0x80; /显示秒的个位 P2 miao/10+0x10+0x80; /显示秒的十位 P2 fen%10+0x20; /显示分的个位 P2 fen/10+0x30+0x80; /显示分的个位 P2 shi%10+0x40; /显示时的个位 P2 shi/10+0x50+0x80; /显示时的个位 /*停车显示函数*/tingche P2 shou_fei/10+0x50+0x80;delay 5 ; /显示收费金额的十位 P2 shou_fei%10+0x40; /显示收费金额的个位 P2 z/10+0x30+0x80; /显示停车总数的十位 P2 z%10+0x20; /显示停车总数的个位 P2 4-n /10+0x10+0x80; /显示空车位数的十位 P2 4-n %10+0x00; /显示空车位数的个位 /*检测函数*/void jiance if n 4 if P1_3 0 while P1_3 0 tingche ; P1_1 0; n+; z+; delay1ms 10 ; P1_1 1; else P1_0 0; if P1_4 0 while P1_4 0 tingche ; P1_2

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

当前位置:首页 > 标准材料 > 石化标准

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

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