引脚号 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 第二功能 RXD(串行输入) TXD(串行输出) INT0(外部中断0) INT1(外部中断1) T0(定时器0外部输入) T1(定时器1外部输入) WR(外部数据存储器写选通) RD(外部数据存储器读选通) 表4.1 P3口的特殊功能
图4.2 单片机IO口
RST:复位输入。晶振工作时,RST脚持续2个机器周期高电平将使单片机复位。DISRTO默认状态下,复位高电平有效。
ALE/PROG:控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲。在Flash编程时,此引脚(PROG)也用作编程输入脉冲。 在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时, ALE脉冲将会跳过。如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。
PSEN:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当STC89C52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活
两次,而在访问外部数据存储器时,PSEN将不被激活。
EA/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外
部程序存储器读取指令,EA必须接地。
为执行内部程序指令,EA应该接VCC。 在Flash编程期间,EA也接收12伏VPP电压。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 4.1.2 数码管
数码管有共阳和共阴之分,根据单片机连接电路,可以计算出数码管的真值表,在编程时调用数码管真值表就可以控制数码管显示相应的信息。
图4-2 数码管引脚图
4.2 模块功能介绍 4.2.1 控制模块
控制模块电路如图4-4所示。主控制器采用STC89C52。STC89C52是宏晶公司生产的一款性能稳定的8位单片机,具有1个8KB的Flash程序存储器,1个512字节的RAM,3个16位的定时/计数器,4个8位的双向可位寻址I/O端口, 1个串行口,6个中断源,两个中断优先级。
STC89C52的P1口用于控制东西南北通行灯,P2口用于控制通行灯,P0口用于2位LED显示器的段码控制,P2口用于,2位LED显示器的位码控制,手动/自动转换采用P3.7扳键。EA/VPP接+5V电源端。晶振及复位按典型电路设计,元器件参数如图2-3中所示。晶振频率为12MHz。
图2-3 控制模块原理图
4.2.2 通行灯显示模块
通行灯显示模块如图2-4所示。通行灯指示采用高亮度共阴红、黄、绿色发光二极管,左拐、直行、右拐及行人各一组。发光二极管的共阴极通过电阻接地,阳极接P1口或P3口(东西南北为P1口,人行道为P2口)。
图2-4 通行灯和时间显示模块
4.2.3 时间显示模块
通行剩余时间显示模块如图2-4所示(以北路口为例)。
路口通行剩余时间采用高亮红色共阴LED发光数码管显示,采用共阴数码管,如用单片机吸收电流驱动,列扫描驱动使用三级管,按每段6mA电流算,全显示字型“8”时,每个数码管需6mA×8=48mA。由于时间显示每个路口相同,4组需192mA,因此设计中采用反相器以保护单片机的端口。 4.2.4 复位电路模块
单片机复位电路采用按键复位电路,当按键S1按下电容C3充电,RES端口持续两个机器周期后单片机实现复位,其复位电路如下图所示:
图3.5 按键复位电路
4.2.5 电源电路
电源电路如图2-5所示。整个系统采用的电源电压只需+5V电压,将交流电经变压器变换为15V交流电,再用整流桥得到13.5V左右的直流电,采用不可调的3端稳压器件LM7805将电源稳定在5V直流输出。
图2-5 系统电源电路
4.3原理图与PCB电路图