基于单片机的智能交通灯控制系统设计与实现 联系客服

发布时间 : 星期一 文章基于单片机的智能交通灯控制系统设计与实现更新完毕开始阅读1045ba83b8f67c1cfbd6b81f

XXXXXX毕业设计

部分则是交通灯系统的基础。没有硬件系统则没有所谓的交通灯系统。只有将两者结合,才能实现功能齐全的及交通灯系统。

3.3单片机内部组成以及引脚介绍

8052是MCS-52系列单片机的典型芯片,不同型号一般程序存储器结构不同,其余内部结构都是完全相同,引脚也全部兼容。Atmel公司的89系列发展很快,应用也最为广泛,和8052引脚也完全相同,插座也相互兼容。所以用89C52代替8051时,只要封装相同就可以直接代换。

中央处理器(CPU):

交通灯系统的控制核心是单片机,而单片机的控制核心是中央处理器。它与计算机的处理器一样分为4字长、8字长、16字长和32字长等处理器,它与单片机的处理数据能力、控制功能、运算速度等性能等性能有关,因此,字长是衡量CPU功能的主要指标。CPU由运算器和控制器组成。各一个8位的算术逻辑单元(简称ALU)、累加器(简称ACC)、暂存器B和程序状态寄存器(简称PSW)构成了CPU的运算器。所述控制器包括程序计数器(PC) ,指令寄存器(IR) ,指令译码器(ID)和一个控制电路等。

内存数据存储器RAM:

单片机89C52芯片内部数据存储器通常是指低128个单位,可以读也可以写,是分配给用户使用的,在断电后数据会消失。高128个单位则是内部专用寄存器使用的存储单位,用户无法对其进行操作,所以芯片内部一共包含256个RAM单元。

内部程序存储器ROM:

89C52芯片的内部程序存储器使用的是只读存储器,这样有利于系统的可靠及稳定性且能节省成本。它有4KB掩摸ROM,只能读不能写程序将不会在断电后丢失。这样则不会改变程序的原始数据,通常称为只读程序存储器 并行I/O端口:

89C52芯片内部有4个8位并行I/O端口(P0口、P1口、P2口和P3口),通过I/O端口实现数据并行输入输出,是人机交互的接口。 串行口:

89C52芯片内部串行实现单片机与外围设备之间的数据通信是通过一个全双工异步串行口。该串行口既可以作为同步移位器使用,扩展外部I/O端口,又可以作为全双工异步通信收发器使用。

定时/计数器:

89C52芯片内部的2个16位定时/计数器可以控制单片机的内部时钟,使单片机按照一定的机器时钟进行状态控制。还可以进行外部定时或计数功能,是芯片的重要组成部分。

中断系统:

8

XXXXXX毕业设计

8052内部共有5个中断源,2个优先级别分别是高优先级和低优先级,在同级的情况下,外部中断0大于定时器T0中断大于外部中断1大于定时器中断T1大于串行口中断。

时钟电路:

89C51芯片单片机内部具有时钟电路,只需要在XTAL1和XTAL2引脚之间接上石英晶体和微调电容就能构成完整的时钟电路。此系统选用的晶振频率为12MHz。相应的机器周期是1us。

引脚介绍:

VCC:STC89C52电源接入端,接+5V。 GND:电源接地端。

XTAL1和XTAL2:当需要使用外部时钟时,则连接外部的时钟电路;若要使用内部时钟则连接电容和晶振。本系统所使用的是内部时钟,所以在两引脚间连接了电容和12MHz的晶振。

RESET:STC89C52芯片的重置引脚,当连续输入这个引脚2个机器周期以上的高电平即有效电平时,芯片将进行系统的复位操作,各个寄存器都恢复到最初的状态重新运行程序。

EA:EA的E的英文是External ,A的英文是Access ,合在一起是外部程序存储器的意思。上面的横线则代表低电平有效。所以这个引脚接高电平则使用内部程序存储器,低电平则使用外部的程序存储器。在此系统中,由于程序下载到内部程序存储器中,因此该引脚与+5V电源相连接。

ALE:ALE是编程脉冲的输入端。它以晶振频率的1/6的固定频率输出,所以也可以作为时钟电路使用。同时这个引脚也是P0口低8位 的地址锁存器,将低8位数据与地址相互隔离,用于系统扩展。

PSEN:此为\的缩写,其意为程序储存启用。低电平有效,当引脚输入低电平时实现对外部ROM单元的读操作。在执行指令的取指阶段和从程序存储器中取数据时有效。

P0口(P0.0~P0.7):端口0可以作为通用I/O端口使用和地址/数据线使用。共有8个位,P0.0表示位0,P0.1表示位1,依此类推。一个数据输出D锁存器、两个三态数据输入缓冲器、一个输出控制电路和一个数据输出的驱动电路共同构成了P0口的逻辑电路。如果EA引脚的电平为低时(即取用片外RAM扩展或数据存储器),P0就以双向口的工作方式提供地址总线(A0~A7)及数据总线(D0~D7)。在此设计中,P0口是作为通用I/O口将各个共阴极数码管相应的段选控制端并联在一起,用驱动器74HC245驱动。

P1口(P1.0~P1.7):是89C51单片机唯一的单功能端口,仅仅能用作通用的数据

9

——

XXXXXX毕业设计

输入/输出口。 P1口的逻辑电路与P2口相似,但其内部没有输出控制电路,而且具有上拉电阻。所以其只能作为通用I/O端口使用。在此系统中,P1口是用来控制数码管的公共端,也称作为“位选端”。

P2口(P2.0~P2.7):端口2也具有2个功能:一个是具有内部提升电路的双向I/O端口,与P0口相似;另一功能也跟P0口相似,P0口的第2功能是作为地址/数据线使用,而P2口是单一的地址线使用。系统扩展时作为高8位的数据线使用。当没有在89C51单片机芯片外扩展ROM和RAM,且P2口高8位地址总线没有全部用到时,P2口的口线就可以全部作为通用I/O口线使用。P2口属于准双向口。在本系统中,P2口用于控制LED信号灯的亮灭。

P3口(P3.0~P3.7):作为通用I/O口,作为输出时,锁存器的状态端(Q)与输出引脚的状态相同;作为输入端口时,为使引脚处于高阻输入状态,需向锁存器输入程序数据“1”。输入的数据在“读引脚”信号的作用下,进入内部数据总线。所以,P3口在作为通用I/O口时,也属于准双向口。在本系统,P3口作为第二功能使用,主要利用按键模块实现系统的中断跳转。

P3端口使用第二功能时: 其引脚分配如下:

P3.0:RXD,串行通信数据的接收。 P3.1:TXD,串行通信数据的发送 P3.2:INT0,外部中断0申请。 P3.3:INT1,外部中断1申请。 P3.4:定时/计时计数器0的外部输入。 P3.5:定时/计时计数器1的外部输入。 P3.6:WR:外部数据存储器的写入信号。 P3.7:RD,外部数据存储器的读取信号。 单片机引脚图如图3.1所示:

————

3.4单片机最小系统

上面提到单片机的应用系统可以分为硬件部分和软件部分。软件部分指挥各个硬件执行烧录进单片机内的程序,如果没有程序那么它显然是无法工作的的。但如果它仅仅只是烧录了程序,它还是同样无法工作。原因是除了单片机和软件部分外,要使单片机能够正常工作,还需要时钟电路和复位电路。芯片加上时钟和复位电路,这样才是完整的最小单片机系统。在XTAL1引脚和XTAL2引脚间跨接一定频率的晶振构成时钟电路为单片机的正常工作提供基本时钟,机器周期则由晶振频率决定。复位电路则将系统恢复初始化。就如同此系统中,将系统恢复至东西通行,南北禁止的刚启动系统的状态。

10

XXXXXX毕业设计

图3.1 单片机电路引脚图

为了实现单片机的同步工作,系统必须有唯一的时钟信号,并在这个时钟信号下严格的按时序进行状态转换和工作。这个时钟信号可以外部时钟也可以芯片自带的时钟信号。这种时钟信号由时钟电路提供。在本系统中,在STC89C51单片机XTAL1和XTAL2之间接的是晶振频率为12MHz的晶振。机器周期是晶振频率的十二分频,所以机器周期为1us。适当编写程序,则可以定时1ms或者1s的时间。

单片机与计算机相同,都有可能会出现故障死机或断电的情况,这时候则需要和计算机一样有一个复位键将系统重启,单片机的复位电路也是使CPU和系统中的其他功能部件都恢复到一个确定的初始状态。实现复位的条件就是RST引脚输入持续2次机器周期的高电平。复位后PC=0000H,即是从新从程序存储器的第1个单元取指令进行译码。若持续高电平则会循环复位。

按键复位和上电自动复位是复位电路经常采用的两种不同的方式。本系统所使用的是按键复位。按键在其余4个按键的中间,接芯片的RST引脚。按键瞬间RST引脚端电位与Vcc一致,随着电容C1的充电,充电电流的减少,导致RST引脚的高电位下降。只要RST引脚的高电位能够保证在2个机器周期以上,单片机就会进行复位操作,使系统复位。上电复位则要求接上电源之后能够自动实现系统的复位,原理相同,不再赘述。单片机最小系统原理图如图3.2所示:

11