发布: 2009-4-04 19:56 | 作者: hnrain | 查看: 43次
交通灯控制系统设计电子园51单片机学习网 F;tG?)~8c
摘要:本系统由单片机系统、键盘、LED 显示、交通灯演示系统组成。系统包括人行道、左转、右转、以及基本的交通灯的功能。系统除基本交通灯功能外,还具有倒计时、时间设置、紧急情况处理、分时段调整信号灯的点亮时间以及根据具体情况手动控制等功能。电子园51单片机学习网2X }}eL%z*{
关键词:AT89S51,交通规则电子园51单片机学习网cZw*H(j8X O
一、 方案比较、设计与论证电子园51单片机学习网 E8X/Vr_Ru \]C+t
1 电源提供方案电子园51单片机学习网3M5p+_;wz _ f8NE
为使模块稳定工作,须有可靠电源。我们考虑了两种电源方案电子园51单片机学习网T.@A.}'bWg
方案一:采用独立的稳压电源。此方案的优点是稳定可靠,且有各种成熟电路可供选用;缺点是各模块都采用独立电源,会使系统复杂,且可能影响电路电平。电子园51单片机学习网w@z e0@b@
方案二:采用单片机控制模块提供电源。改方案的优点是系统简明扼要,节约成本;缺点是输出功率不高。
'e'F5_"L@4w:W44606综上所述,我们选择第二种方案。
&E@NLB;WZ:q/Ko446062 显示界面方案
HVnI @$~Ev44606该系统要求完成倒计时、状态灯等功能。基于上述原因,我们考虑了三种方案:电子园51单片机学习网!O4r!}(R)z*[E#e
方案一:完全采用数码管显示。这种方案只显示有限的符号和数码字苻,无法胜任题目要求。
o"s*th,Pr5\A;B44606方案二:完全采用点阵式LED 显示。这种方案实现复杂,且须完成大量的软件工作;但功能强大,可方便的显示各种英文字符,汉字,图形等。
C yH8q0C&c hx44606方案三:采用数码管与点阵LED 相结合的方法因为设计既要求倒计时数字输出,又要求有状态灯输出等,为方便观看并考虑到现实情况,用数码管与LED灯分别显示时间与提示信息。这种方案既满足系统功能要求,又减少了系统实现的复杂度。权衡利弊,第三种方案可互补一二方案的优缺,我们决定采用方案三以实现系统的显示功能。
*h!omZf%](aOE_446063 输入方案:
gV~%]Q2?rH44606题目要求系统能手动设灯亮时间、紧急情况处理,我们讨论了两种方案:
)F|-n'mHk44606方案一:采用8155扩展I/O 口及键盘,显示等。该方案的优点是:
2K$}:[ t!A/fK+U"p5A44606使用灵活可编程,并且有RAM,及计数器。若用该方案,可提供较多I/O 口,但操作起来稍显复杂。
pBYi_:n;m_ @44606方案二: 直接在IO口线上接上按键开关。因为设计时精简和优化了电路,所以剩余的口资源还比较多,我们使用四个按键,分别是K1、K2、K3、K4。
f9r+QJv-~_YD44606由于该系统对于交通灯及数码管的控制,只用单片机本身的I/O 口就可实现,且本身的计数器及RAM已经够用,故选择方案二。
3C{)P9P"n%d.pXj9t44606二、理论分析与计算电子园51单片机学习网p6TsL w+Q
1.交通灯显示时序的理论分析与计算
A d@LF7_\p a44606对于一个交通路口来说,能在最短的时间内达到最大的车流量,就算是达到了最佳的性能,我们称在单位时间内多能达到的最大车流为车流量,用公式:车流量= 车流 / 时间 来表示。
先设定一些标号如图2-1 所示。电子园51单片机学习网/\bXs E/BIcaTU
说明:此图为直方图,上边为北路口灯,右边为东路口灯,下边为南路口灯,左边为西
9c-r#Z1Im$`s&d44606路口灯。电子园51单片机学习网l$\equ[%?[8|4i
图2-2 所示为一种红绿灯规则的状态图,分别设定为S1、S2、S3、S4,交通灯以这四电子园51单片机学习网(_Y.\rJ+S$X `+x pv
的状态为一个周期,循环执行(见图2-3)。
4B.N0}K[`u44606请注意图2-1b和图2-1d,它们在一个时间段中四个方向都可以通车,这种状态能在
'c@ bllRqm%HR8Q1U44606一定的时间内达到较大的车流量,效率特别高。
+G#m {H6IDd44606依据上述的车辆行驶的状态图,可以列出各个路口灯的逻辑表,由于相向的灯的状态图
Ca(hpxlC-o44606是一样的,所以只需写出相邻路口的灯的逻辑表;根据图2-3 可以看出,相邻路口的灯它
yv#G3TL)pk-B"NGB44606们的状态在相位上相差180°。因此最终只需写出一组S1、S2、S3、S4的逻辑状态表。电子园51单片机学习网u5y5IgnNee
1X1i i!O4s2N Ldq zq0D44606如表2-1 所示。
;Acg)U*Nm!JE44606J{0Ip.c ir4{z S4l1Vx44606电子园51单片机学习网W6SLV&y!U-\
|0~v f0_F(t44606表中的“×”代表是红灯亮(也代表逻辑上的0),“√”是代表绿灯亮(也代表逻辑上电子园51单片机学习网1^VsAlc5s,j
的1),依上表,就可以向相应的端口送逻辑值。
文章评论(0条评论)
登录后参与讨论