物理与电信工程学院
第一章 绪论
1.1研究背景及意义
近年来,随着经济建设的快速发展,汽车带给人们快乐的同时也带来了越来越突出的难题:城市交通问题日益严重,停车问题接踵而至,一个不到10平方米的停车位,牵动着社会的“神经”,停车场车位不足的问题越来越突出。目前,有偿使用停车场是这个问题最为有效的解决方式,这就使得停车场管理的重要性越来越受到重视。然而目前的大部分停车场管理系统都是采取人工判别车型、人工收费、人工放行以及人工引导车辆入库等比较传统的管理模式,这在很大程度上制约着城市的发展。本文是利用单片机来设计的一个停车场管理系统。
在如今农业、工业、生活、军事等各个方面都向自动化、智能化、数字化发展。为了适应时代的发展,电子技术发展迅猛。自动化、智能化、数字化的实现方式多种多样,从而产生了很多设计工具。单片机就是其中之一,它正朝着高性能和多品种方向发展,卓越的性价比受到设计者的欢迎。
1.2 系统概述
本系统包括:传感器模块、电源模块、LED显示模块、键盘输入模块等。它可以实现控制门的开启、显示当前停车场内车辆的数目及状态、人工的设置总车位数以及剩余车位数等功能。
系统的特点:
(1)由于本系统采用电子元件无需人工管理。 (2)自动控制门的开启。 (3)自动显示停车场的车位状态。 (4)人工设置总车位数,剩余车位数。 (5)本系统适用于任意停车场。
1.3课题介绍
本设计是将单片机作为控制系统的核心部件,通过传感器模块检测到有车辆进出时,进行判断,控制自动门的开启,并通过对显示模块进行动态扫描,显示目前停车场内车辆的数
1
物理与电信工程学院
目及状态。管理者还可以对停车场的最大容量等进行人工的限制。如系统的基本框图1.1所示:
传感器模块 显示模块 89S52 电源 键盘输入模块
图1.1 系统基本框图
2
物理与电信工程学院
第二章 硬件电路设计
该系统用于检测是否有车辆进出,是否有空余车位,应用单片机来控制其他模块以实现对车辆的数目、状态等的加减计数和状态显示,并利用单片机中的定时系统对车辆进出的时间限制以及设定,键盘系统的输入可以人工控制总车位数以及剩余车位数
2.1芯片的选择 2.1.1 AT89S52的介绍
本系统采用的是一种低功耗、高性能的MCS-51系列的单片机,AT89S52是一种COMS8位微控制器,具有8K在系统可编程Flash存储器,是由Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52委众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
AT89S52的主要性能:
● 与MCS-51单片机产品兼容; ● 8K字节在系统可编程Flash存储器; ● 1000次擦写周期; ● 全静态操作; ● 三级加密程序存储器; ● 32个可编程I/O口线; ● 三个16位定时器/计数器; ● 8个中断源;
● 全双工UART串行通道; ● 低功耗空闲和掉电模式; ● 掉电后中断可唤醒; ● 看门狗定时器; ● 双数据指针;
3
物理与电信工程学院
● 掉电标识符;
2.1.2 AT89S52引脚功能
● VCC:电源 ● GND:地
● P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻。在 flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外接上拉电阻。
● P1口:P1口是一个具有内部上拉电阻的8 位双向I/O 口,P1 输出缓冲器能驱动4 个TTL 逻辑电平。对P1 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位地址字节。作为第二功能时,作用如表1所示:
表2.1 P1口的第二功能
P1口 P1.0 P1.1 P1.5 P1.6 P1.7 第二功能 T2(定时器/计数器T2的外部计数输入),时钟输出 T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制) MOSI(在系统编程用) MISO(在系统编程用) SCK(在系统编程用) ● P2口:P2口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2 口送出高八位地址。在这种应用中,P2 口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,
4
物理与电信工程学院
P2口也接收高8位地址字节和一些控制信号。
● P3口:P3口是一个具有内部上拉电阻的8 位双向I/O 口,P2 输出缓冲器能驱动4 个TTL 逻辑电平。对P3 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52特殊功能(第二功能)使用。在flash编程和校验时,P3口也接收一些控制信号。作为第二功能时,作用如表2所示:
表2.2 P3口的第二功能
P3口 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第二功能 RXD TXD INT0 INT1 T0 T1 WR RD 信号名称 串行数据接收口 串行数据发送口 外部中断0请求输入 外部中断1请求输入 定时器/计数器0的外部输入口 定时器/计数器1的外部输入口 外部RAM写选通信号 外部RAM读选通信号 ● RST: 复位输入。晶振工作时,RST脚持续2 个机器周期高电平将使单片机复位。看门狗计时完成后,RST 脚输出96 个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。
● ALE/PROG:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8 位地址的输出脉冲。在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE 仅在执行MOVX 或MOVC指令时有效。否则,ALE 将被微弱拉高。这个ALE 使能标志位(地址为8EH的SFR的第0位)的设置对U18765432128272625242322213130299P1.7P1.6P1.5P1.4P1.3P1.2P1.1P1.0P2.7/A15P2.6/A14P2.5/A13P2.4/A12P2.3/A11P2.2/A10P2.1/A9P2.0/A8EAALEPSENRSTP3.7/RDP3.6/WRP3.5/T1P3.4/T0P3.3/INT1P3.2/INT0P3.1/TXDP3.0/RXD17161514131211103418XTAL219XTAL1P0.7/AD7P0.6/AD6P0.5/AD5P0.4/AD4P0.3/AD3P0.2/AD2P0.1/AD1P0.0/AD03233343536373839AT89S52 5 AT89S52的引脚如图2.1所示