交通灯的设计_第1页
交通灯的设计_第2页
交通灯的设计_第3页
交通灯的设计_第4页
交通灯的设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、交通灯的设计摘要:本系统由单片机、LCD显示、交通灯演示系统三个部分组成。 采用AT89S51芯片设计一个十字路口交通灯。系统实现了通行及等待基 本的交通灯的功能,在人行道上的自行车与行人会在绿灯时会呈现动 态。本设计中的交通灯控制系统在原有红绿灯的基础上加入自行车道及 人行道指示。该设计比传统交通灯更加人性化方便了行人在十字路口的 通行。关键词:交通灯单片机LCDAbstract: This system by the led display monolithic integrated circuits, and the traffic lights dem on strates the s

2、ystem of three parts. the chip design at89s51 at the traffic lights. the system for access to and wait for the traffic lights. on the pavement of the bike and pedestria ns in the gree n light to be a dyn amic.The design of traffic control system in the light on the basisof the lanes and the sidewalk

3、. the design better than traditional traffic lights more humanized facilitate pedestrians at the in tersectio n.Key words: Traffic lights ; Mono lithic in tegrated circuits;LCD1系统的硬件配置1.1单片机简介单片微型计算机简称单片机,是典型的嵌入式微控制器 (Microcontroller Unit),常用英文字母的缩写 MCI表示单片机,它最早 是被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。 最早

4、的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。INTEL的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。单片微型计算机是微型计算机的一个重要分支,也是一种非常活跃和 颇具有生命力的机种。单片微型计算机简称单片机,特别适用于工业控制 领域,因此又称为微控器。1971年微处理器研制成功不久,就出现了单片微型计算机即单片机, 但最早的单片机是1位的,处理能力有限。123456731312151431I91891716IbJTlINTOTiTOEA/VPXiX2RESETRDWR- 1

5、 2 3 4 5 6 7 J -匚 _ -IX - J - - i .11 r-ppppppp01234567 _u O u O PPPPPPPPP2OP21P22P24P25P2P27R3CDTKDAL-E/FPSBbi393S373?57212?2?耳2?273TID 彳1 孔图1单片机芯片示意图1.2设计方案及硬件介绍1.2.1设计原理本设计使用的是单片机作为核心的控制元件,使得电路的可靠性比较 高,功能也比较强大,而且可以随时更新系统,根据道路情况适时调整交 通灯的状态,全面有效地利用交通灯指示交通情况。该设计是以单片机 AT89S5伪核心完成的,在硬件电路中采用P10P17 口控制交

6、通指示灯,采用 P30P35 口作为128*64LCD数码管的驱动接口, 可显示各个方向的自行车和人行道的即时状态。芯片选用AT89C51单片机,电路由下列部分组成:交通灯演示电路、 LCD显示电路。此交通灯系统位于一个十字路口,此路口为东南西北走向。南北方向 为主干道,东西方向为支干道。各干道有一组红、绿二色的指示灯,指挥车辆和行人安全通行。红灯亮禁止通行,绿灯亮允许通行。此交通灯系统工作过程分为2个状态。状态1南北方向绿灯亮,东西方向红灯亮,南北方向自行车与小人指示呈现运动状态,东西方向自行车 和小人呈现停止状态。状态 2南北方向红灯亮,东西方向绿灯亮,南北方 向自行车与小人指示呈现停止状

7、态, 东西方向自行车和小人呈现运动状态。功能:双色LED模拟交通灯信号,并用LCD显示直行车与小人状态。接线: 对应连接液晶显示模块的RS R/W E、PSB RST ;到CPU模 块的 P3.0、P3.1、P3.2、P3.3、P3.5 ;CP!模块JD8连接到双色LED勺JD3B1.2.2接线原理图U10B245A0?4-AL24? A 2I :245A4245A524SA6245 A/TDIB24 5 AO3I5A457T1TTajTT5a2-I5A71 1 2 2 J 3 4 斗 RGRGR-GKG10D 12 34567 AAAAAAAA74HC245LED1BCTkoI 2 3 w

8、6 7 bb-bbbbbbLEEHB图2交通灯随机控制原理图=1Wd Vc JrriBv xO.I1.1FLJCD1图3液晶显示电路1.2.3单片机AT89S51介绍AT89S51是MCS-51系列单片机的典型产品,我们就这一代表性的机型 进行系统的讲解。89S51单片机包含中央处理器、程序存储器(ROM)数据 存储器(RAM卜定时/计数器、并行接口、串行接口和中断系统等几大单元 及数据总线、地址总线和控制总线等三大总线,现在我们分别加以说明:TINT中断系统P0-3 并行/接口I存储器CPU并行/接口IITXDRXE图4单片机内部结构示意图(1)中央处理器中央处理器(CPU)是整个单片机的核

9、心部件,是8位数据宽度的处理器, 能处理8位二进制数据或代码,CPU负责控制、指挥和调度整个单元系统协 调的工作,完成运算和控制输入输出功能等操作。(2)数据存储器(RAM)AT89S51内部有128个8位用户数据存储单元和128个专用寄存器单 元,它们是统一编址的,专用寄存器只能用于存放控制指令数据,用户只 能访问,而不能用于存放用户数据,所以,用户能使用的RAMR有128个,可存放读写的数据,运算的中间结果或用户定义的字型表。(3)程序存储器(ROM)AT89S51共有4KB掩膜ROM最大可扩展64K字节,用于存放用户程序, 原始数据或表格。(4)定时/计数器AT89S51有两个16位的可

10、编程定时/计数器,以实现定时或计数产生中断用于控制程序转向(5)并行输入输出(I/O) 口:AT89S51共有4组8位I/O 口 (P0、P1、P2或P3),用于对外部数据 的传输。(6)中断系统AT89S51具备较完善的中断功能,有两个外中断、两个定时 /计数器中 断和一个串行中断,可满足不同的控制要求,并具有2级的优先级别选择。本设计使用的是单片机作为核心的控制元件,使得电路的可靠性比较高, 功能也比较强大,而且可以随时更新系统,根据道路情况适时调整交通灯 的状态,全面有效地利用交通灯指示交通情况。1.2.4 AT89S51单片机的引脚AT89S51单片机内部总线是单总线结构,即数据总线和

11、地址总线是公 用的。AT89S51有40条引脚,与其他51系列单片机引脚是兼容的。这40条引脚可分为I/O接口线、电源线、控制线、外接晶体线4部分。89S51单片机为双列直插式封装结构,如下图所示O12245S7T s L i 1 i i 1 i i K FPFPPFPP匚匚E匚匸匚匸匚ERxn/pa, o 匚TKII/P3. 1 匚rwTo/pa. 2 匚rNTT/P3, 3 匚T0/P3. 4 ETL/F3. 5 匚颐阳.G匚RB/P3. 7 匚XTAL2 rXTAL1 匚GNE匸O123456TS$Oix 1.0 OJ IX IT IT ix- 1 IX 11 IT IX il ?-O9

12、S7&54321OQ-007&5 斗 gejl43333333333222222222 Vcc P5 0 ;ADO P0. 1/AD1 P0, 2/AD2 P0. 3/AD3 P(J. 4/AD4 Pu, 5/AD5 P0. G/AD& P(i. 7/ADT EA/VPP_ ALE f PROC- PES1T P2, 7/A15 P2. E/A14 P2. 5/A13 P2, 4/A12 P2. 3/A11 P艺 2/A10 P2. L/A9 P2. D/AS图5 AT89S51引脚分配图AT89S5仲机的电源线有以下两种:(1)VCC: +5V电源线。电源线(2)GND接地线。AT89S5仲

13、片机的外接晶体引脚有以下两种:(1)XTAL1:片内振荡器反相放大器的输入端和内部时钟工作的输入端。 采用内部振荡器时,它接外部石英晶体和微调电容的一个引脚。(2)XTAL2:片内振荡器反相放大器的输出端,接外部石英晶体和微调 电容的另一端。采用外部振荡器时,该引脚悬空。外接晶体引脚。控制线AT89S51单片机的控制线有以下几种:(1)RST:复位输入端,高电平有效。(2)ALE/PROG地址锁存允许/编程线。(3)PSEN外部程序存储器的读选通线。(4)EA/Vpp :片外ROM允许访问端/编程电源端。2系统软件设计2.1 LCD显示程序东西红南北绿时显示图形1到3LGS1:MOVP1,#1

14、2h;RED LIGHTMOVDPTR,#TAB1;显示图形1LCALLPHO_DISPLCALLDELAYMOV DPTR,#TAB2 ;显示图形2 13 图形个数待定LCALL PHO_DISPLCALL DELAYMOV DPTR,#TAB3 ;显示图形313 图形个数待定LCALL PHO_DISPLCALL DELAYDJNZ R4,L GS1;LCALL DELAY3;LCALL DELAY3 ;循环次数待定MOV R4,#6东西绿南北红时显示图片4到6lop:MOV P1,#21H;GREEN LIGHTMOV DPTR,#TAB4;显示图形4 13图形个数待定LCALL PHO

15、_DISPLCALL DELAY;40MS延时待定需要10MSDELAY3寸间过长,NEED THE OTHER DELAY!MOVDPTR,#TAB5;显示图形523LCALLPHO_DISPLCALLDELAYMOVDPTR,#TAB6;显示图形612LCALL PHO_DISPLCALL DELAYDJNZ R4,lopLJMP l;循环RET2.2主程序RSEQUP3.0;接收信号STDEQUP3.1;读写指令SCLKEQUP3.2;时钟信号PSBEQUP3.3;行列选RSTEQUP3.5;复位RS_STUEQU20H.0LCD_XEQU30HLCD_YEQU31HCOUNTEQU34

16、HCOUNT1EQU35HCOUNT2EQU36HCOUNT3EQU37H;LCD_DATA EQU38H;LCD_DATAEQU39H;LCD_DATAEQU3AHDA_INEQU3BHWR_COUNTHQU3CHWR_COUNTEQU3DHORG0000HLJMPSTARTORG0100HLJMPLGS1ORG0200HSTART:MOVSP,#5FHSETBRSTCLRPSBLGSO:MOVA,#34H;34H-扩充指令操作LCALLSEND_I;写指令子程序,扩充指令操作MOVA,#30H;30H-基本指令操作LCALLSEND_I;写指令子程序,基本指令操作MOVA,#01H;清除显

17、示l:MOVR4,#6LGS1:MOVP1,#12h;RED LIGHTMOVDPTR,#TAB1;显示图形1LCALLPHO_DISPLCALLDELAYMOVDPTR,#TAB2;显示图形213图形个数待定LCALL PHO_DISPLCALL DELAYMOVDPTR,#TAB3;显示图形313图形个数待定LCALL PHO_DISPLCALL DELAYDJNZR4,L GS1JLCALLDELAY3JLCALLDELAY3;循环次数待定MOVR4,#6lop:MOVP1,#21H;GREEN LIGHTMOVDPTR,#TAB4;显示图形413图形个数待定LCALL PHO_DISP

18、LCALL DELAY;40MS延时待定需要 10MS DELAY3寸间过长,NEED THE OTHER DELAY!MOVDPTR,#TAB5;显示图形523LCALLPHO_DISPLCALLDELAYMOVDPTR,#TAB6;显示图形612LCALLPHO_DISPLCALLDELAYDJNZR4,lopLJMPl;循环RET.*JPHO_DISP: MOVCOUNT3,#02H ;全屏显示图形子程序MOVLCD_X,#80HPHO_DISP1MOVLCD_Y,#80HMOVCOUNT2,#20HPHO_DISP2MOVCOUNT1,#10HLCALL WR_ZBPHO_DISP3C

19、LRAMOVC A,A+DPTRLCALL SEND_DINC DPTRDJNZ C0UNT1,PH0_DISP3INC LCD_YDJNZ COUNT2,PHO_DISP2MOLCD_X,#88HDJNZ C0UNT3,PH0_DISP1MOV A,#36HLCALL SEND_I;MOA,#30HLCALL SEND_I;XRET调用count2的数值轴坐标数值;CLRRAM:J1MOVCD_DATA1,#OOH;GDRAM| 0 子程序MOV_CD_DATA2,#OOHRET;$;$WR_ZB:MOA,#34HLCALL SEND_I;MOA, LCD_YLCALL SEND_I;MOA

20、, LCD_XLCALL SEND_I;MOA,#30HLCALL SEND_I;XRET *调用count的数值输出丫轴值输出X轴值轴坐标数值SEND_D:SETB RS_STUMODA_IN,ALCALL SERIAL_WR;写数据子程序RETSEND:CLRRS_STU;写指令子程序MODA_IN,ALCALL SERIAL_WRRET;$;DA_IN:数据或指令;RS_STU:数据指令选择;WR_COUNT1 计数器 1;WR_COUNT2计数器 2SERIAL_WFPUSH ACCMOV A,DA_INSETB RSMOV WR_COUNT1,#O5HSETB STD;1SERIAL_WR1: CLRSCLKSETB SCLKDJNZ WR_COUNT1,SERIAL_WR1CLR STD;RWCLRSCLKSETB SCLKJNBRS_STU,CLR_RSSETB STD;写数据SJMP SETB_RSCLR_RS:CLRSTD;写指令SETB_RS: CLRSCLKSETB SCLKCLRSTD;0CLRSCLKSETB SCLKMOV WR_COUNT1,#02HSERIAL_WR2: MOWR_COUNT2,#04HSERIAL_WR21:RLC AMOSTD,CCLRSCLKSETB

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论