- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
交通灯设计
班级:
姓名:
学号:
2016年 5月 5日
课程设计总体目标
1.1 总体结构
设计一个十字路口交通控制器。
开始运行后,先南北绿灯60S(通行60S)、东西红灯65S (禁止65S);然后, 南北转黄灯闪烁5S;接着,东西绿灯30S(通行30S),南北红灯35S(禁止35S); 最后,东西转黄灯闪烁 5S;
在二极管亮或者闪烁的同时两个方向的数码管显示倒计时, 东西向一组数码管, 南北向一组数码管。
硬件设计
包括硬件电路及工作原理描述
1. 设计思路
模拟交通灯控制电路时运用单片机来控制红、 黄、绿三色LED灯显示,并通过定 时器中断来控制数码管显示倒计时。
红、黄、绿交替闪亮,利用数码管计数显示间隔等,用于管理十字路口的车 辆及行人通过,计时牌显示路口通行转换剩余时间。
单片机总控制电路如下图:
DBPO.luFTlll.OuFh61.0uF3*1.0uF11301百15 n1317 7T T35
DBP
O.luF
Tl
ll.OuFh
6
1.0uF
3
*
1.0uF
11
30
1百
15 n
13
17 7T To
9
39
38
37
3?
35
34
33
21
22
23
24
25
26
27
1 OuF
T
C1+
Vcc
v+
GND
Cl-
Tlout
C2+
Rim
O-
TT
Rlout
V-
1 111L
—
T^out
T2in
!—
R^iti
R^out
MAX232
POO
P10/T
P01
P11/T
P02
P12
P03
P13
P04
P14
P05
P15
P06
P16
P07
P17
P2D
INTO
P21
P22
Tl
P23
TO
P24
EA/7F
P25
XI
P26
X2
P27
RESET
INT1
RXD
RD
TXD
WR
ALE^
PSEN
8
g
C—
3
4
7
6
15
TZ
IT
22
STC89C51是一个低功耗,高性能 CMOS 8位单片机,片内含 4k Bytes
ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器 件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准 MCS-51指令
系统及80C51引脚结构,芯片内集成了通用 8位中央处理器和ISP Flash存储单 元,STC89C51在众多嵌入式控制应用系统中得到广泛应用。
3.74LS245是我们常用的芯片,用来驱动led或者其他的设备,它是8路同相三 态双向总线收发器,可双向传输数据。
AG
BO
Al
El
A2
B2
A3
B3
A4
B4
AS
B5
A6
B巧
A7
Bl
DIR
2
3
17
16
4
5
15
(5
L4
7
13
3
1Z
9
11
19
1
74LS245还具有双向三态功能,既可以输出,也可以输入数据
当8051单片机的P0 口总线负载达到或超过 P0最大负载能力时,必须 接入74LS245等总线驱动器。
当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收) DIR=“T,信号由A向B传输;(发送)当CE为高电平时,A B均为高 阻态。
由于P2 口始终输出地址的高8位,接口时74LS245的三态控制端1G和 2G接地,P2 口与驱动器输入线对应相连。P0 口与74LS245输入端相连,E端 接地,保证数据线畅通。8051的/RD和/PSEN相与后接DIR,使得RD且 PSEN 有效时,74LS245输入(P0.1 JD1),其它时间处于输出(P0.1 -D1)。
软件设计
程序流程框图
程序:
C语言:
#in cludereg51.h
#defi ne uchar un sig ned char
#defi ne uint un sig ned int
sbit RED_A=POP; //东西向指示灯
sbit YELLOW_A=P0A1;
sbit GREEN_A=P0A2;
sbit RED_B=P0A3; //南北向指示灯
sbit YELLOW_B=P0A4;
sbit GREEN_B=P0A5;
//延时倍数,闪烁次数,操作类型变量 uchar Time_Count=0,Flash_Count=0,Operation_Type=1;
//定时器 0 中断函数
void T0_INT() interrupt 1
{
TL0=-50000/256;
TH0=-50000%256;
switch(Operation_Type)
{
case 1: //东西向绿灯与南北向红灯亮 RED_A=0;YELLOW_A=0;GREEN_A=1; RED_B=1;YELLOW_B=0;GREEN_B=0; if(++Time
文档评论(0)