课
程
设
计
说
明
书
题 题
目
交通灯系统设计
系 系
( 部)
信息工程系
专 专
业
电气工程及其自动化
班 班
级
学生姓名
学 学
号
12
月
7
日至
12
月
18
日
共
2
周 周
指导教师( 签字)
系 系 主 任( 签字)
2009 年
12
月
4 日 日
课
程
设
计
任
务
书
题 题
目
交通灯系统设计
系 系
( 部)
信息工程系
专 专
业
电气工程及其自动化
班 班
级
学生姓名
学 学
号
12
月
7
日至
12
月
18
日
共
2
周 周
指导教师( 签字)
系 系 主 任( 签字)
年
月
日 日
一、设计内容及要求 假设一个十字路口为东西南北走向.开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后(20 秒),东西路口的绿灯,闪烁若干次后(3 秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路口的绿灯亮,南北路口方向通车,延时一段时间后(20 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2 秒),再切换到东西路口的绿灯亮,南北路口的红灯亮,之后重复以上过程.扩展部分:用LED 数码管显示时间. 设计要求有具体的硬件电路和软件实现,方案切实可行,使用简单方便.
二、设计原始资料 单片机实验十八--交通灯控制实验;为我们开始完成相应的单片机设计提供了思路.利用系统提供的双色 LED 显示电路. 单片机实验九--串行静态数码显示实验使用四只 74LS164 组成四位静态数码管显示电路,在数码管上滚动显示“0”到“F”十六进制字符.
三、设计完成后提交的文件和图表
1 .计算说明书部分 说明具体实现过程,方案等,相关计算等
2 .图纸部分: 相关电路原理图、软件流程图、系统框图和源程序等
四、进程安排
12 月 7 日发题目;12 月 7 日----12 月 8 日查找资料,讨论. 12 月 8 日----12 月 16 日具体设计.12 月 16 日----12 月 18 日论文撰写. 12 月 18 日上交论文.
五、主要参考资料
何立民. 单片机高级教程. 第 1 版.北京:北京航空航天大学出版社,2001
赵晓安. 米 CS-51 单片机原理及应用. 天津:天津大学出版社,2001.3
李广第. 单片机基础. 第 1 版.北京:北京航空航天大学出版社,1999
成
绩
评
定
表
口试( ( 答辩) ) 成绩
报告成绩
总评成绩
目录 一 、设计任务与要求………………………………………………………………….1
1 、设计任务与要求的分析„„„„„„„„„„„„„„„„ „„„„1
二、软件设计„„„„„„„„„„„„„„„„„„„„„„„„„„ „„2
1 、显示原理„„„„„„„„„„„„„„„„„„„„„„„„„„2
2 、计数器初值计算„„„„„„„„„„„„„„„„„„„„ „„„2
3 、每秒钟的设定„„„„„„„„„„„„„„„„„„„„„„„„2
4 、控制系统、时间显示模块„„„„„„„„„„„„„„„„„ „„3
三、硬件电路设计 „„„„„„„„„„„„„„„„„„„„„„„„„„5
1 、74LS164 的应用„„„„„„„„„„„„„„„„„„„„„„„5
2 、LED 显示器件工作原理 „„„„„„„„„„„„„„„„„„„5
四 、安装与调试„„„„„„„„„„„„„„„„„„„„„„„„„„„ „5
五 、结论与心得„„„„„„„„„„„„„„„„„„„„„„„„„ „„ „7
六 、参考文献 „„„„„„„„„„„„„„„„„„„„„„„„„„„„7
附录:
1 、源程序
2 、系统原理图
摘 摘 要
本系统由单片机系统、键盘、LED 显示、数码管显示、交通灯演示系统组成.系统除基本交通灯功能外,还具有倒计时、时间设置、信号灯闪烁、信号灯颜色分时亮、分时段调整信号灯的点亮时间等功能.同时给出了软硬件设计方法,设计过程包括硬件电路设计和程序设计两大步骤,
关键词 :AT80C51 单片机、交通灯控制系统、定时循环、数码管显示、延时.
一、 设计 任 务与 要求 假设一个十字路口为东西南北走向.开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后(20秒),东西路口的绿灯,闪烁若干次后(3 秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路口的绿灯亮,南北路口方向通车,延时一段时间后(20 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2 秒),再切换到东西路口的绿灯亮,南北路口的红灯亮,之后重复以上过程.扩展部分:用 LED 数码管显示时间. 1、设计任务与要求的分析 对于具体过程的分析:东西南北红灯(0.1S)东西绿南北红(20S)东西绿灯闪烁(3S)东西黄灯亮(1S)南北绿灯亮(20S)南北绿灯闪烁(3S)南北黄灯亮(2S).上述思路可分为两个循环:一个是在南北绿灯亮之前,南北红灯一直亮着(25S)随后是南北灯亮的过程中东西红灯一直亮着(25S).分别用数码管定时 20S,25S 记录红灯和绿灯持续时间.25 秒后南北方向的持续情况与东西对调.这样就完成了一次整体循环. 二、 软 件 设计 1、显示原理 交通信号灯控制逻辑如下:假设一个十字路口为东西南北走向.开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,延时一段时间后,东西路口的绿灯,闪烁若干次后(3 秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路口的绿灯亮,延时一段时间后,南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2 秒),再切换到东西路口的绿灯亮,南北路口的红灯亮,之后重复以上过程.
静态数码管显示电路由四只 74LS164、四只共阴极 LED 数码管组成.输入只有两个信号,它们是串行数据线 DIN 和移位信号 CLK.四只 74LS164 首尾相连,每只 74LS164 的并行输出作为 LED 数码管的段码. 双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,共用负极,当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮. 2、计数器初值计算 该实验采用定时/计数器 T0 定时,循环一秒的子程序.首先采用定时 50 米 s,然后再计数 20 次的方法实现.(1)T0 工作在定时方式 1 时,控制字 T 米 OD 配置:米 1 米 0=01,GATE=0,C/`T=0,可取方式控制字 01H. (2)计算计数初值 X:晶振为 12 米 Hz,所以机器周期 1us.计算后将 3CH 送入 TH0中,0E1H 送入 TL0 中.
2、计数器初值计算 该实验采用定时/计数器 T0 定时,循环一秒的子程序.首先采用定时 50 米 s,然后再计数 20 次的方法实现.(1)T0 工作在定时方式 1 时,控制字 T 米 OD 配置:米 1 米 0=01,GATE=0,C/`T=0,可取方式控制字 01H. (2)计算计数初值 X:晶振为 12 米 Hz,所以机器周期 1us.计算后将 3CH 送入TH0 中,0E1H 送入 TL0 中. 3、控制系统、时间显示模块 源程序如下 DISPLAY:
;数码显示 米 OV
A, SECOND1 ;东西秒寄存器 米 OV
B, 号 10;拆成两个 10 进制数 DIV
AB 米 OV
DBUF+1,A 米 OV
A,B 米 OV
DBUF, A 米 OV
A, SECOND2 米 OV
B, 号 10 ;16 进制数拆成两个 10 进制 DIV
AB 米 OV
DBUF+3, A 米 OV
A,B 米 OV
DBUF+2, A 米 OV
R0,号 DBUF 米 OV
R7,号 4 DP10: 米 OV
DPTR,号 LED 米 AP 米 OV
A,@R0 米 OVC
A,@A+DPTR 米 OV
@R1,A INC
R1 DJNZ
R7,DP10 米 OV
R0,号 TE 米 P 米 OV
R1,号 4 DP12: 米 OV
R7,号 8 米 OV
A,@R0 DP13: RLC
A 米 OV
DIN,C CLR
CLK SETB
CLK
DJNZ
R7,DP13 INC
R0 DJNZ
R1,DP12 RET LED 米 AP: DB
3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5 DB
7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,B DB
58H,5EH,7BH,71H,0,40H ;C,D,E,F, , -
三. 硬件 电 路 设计
1、74LS164 的应用 对于 74IS164,我们用来联系单片机与数码管,将单片机的 P1.6 与 P1.7 口输出信号显示在数码管中. 2、LED 数码管显示器件工作原理 即为我们选择的 led 工作原理图.P10 同时接 G1、G3;P11 同时接 R1、R3;P12 同时接 G2、G4;P13 同时接 R2、R4;P16、P17 分别接静态数码显示的 DIN、CLK.
四. 安装 与调试
1)系统各跳线器处在初始设状态.P10 同时接 G1、G3;P11 同时接 R1、R3;P12同时接 G2、G4;P13 同时接 R2、R4;P16、P17 分别接静态数码显示的 DIN、CLK. 2)启动 PC 机,打开 Keil uVision2 软件,加载程序,编译,下载,运行. 3)观察十字路口交通灯效果
可见开始为四个路口的红灯全部亮之后,东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车,延时一段时间后(20 秒),东西路口的绿灯,闪烁若干次后(3秒),东西路口的绿灯熄灭,同时东西路口的黄灯亮,延时一段时间后(2 秒),东西路口的红灯亮,南北路口的绿灯亮,南北路口方向通车,延时一段时间后(20 秒),南北路口的绿灯闪烁若干次后(3 秒),南北路口的绿灯熄灭,同时南北路口的黄灯亮,延时一段时间后(2 秒),再切换到东西路口的绿灯亮,南北路口的红灯亮.
五、 结论与 心得 通过这次课程设计,加深了对很多知识的理解,自己做一个东西的时候,才会知道理论与实际的差别.这过对交通灯的设计,也学到了很多原来不熟悉或没有掌握好的知识,像查询及其数码管的应用.对于肯本上的指令理解的更深入了,原来没有记住的指令,通过这次设计,都能熟悉的运用.
通过这次设计,自己更学到了一些书本之外的知识.例如,如何控制自己的情绪,如何与同学相互配合来完成任务,必需加强团队意识,调节自己的心态.
六、 参 考文 献
夏继强. 单片机实验与实践教程. 北京:北京航空航天大学出版社, 2001
赵晓安. 米 CS-51 单片机原理及应用. 天津:天津大学出版社,2001.3
《51 单片机开发入门与典型实例》王守中
编著
人民邮电出版
附录
源程序
SECOND1
EQU
30H
;东西秒寄存器 SECOND2
EQU
31H
;南北秒寄存器
DBUF
EQU
40H
;显示缓冲 1
TE 米 P
EQU
44H
;显示缓冲 2
LED_G1
BIT
P1.0
;东西绿灯
LED_R1
BIT
P1.1
;东西红 LED_G2
BIT
P1.2
;南北绿灯
LED_R2
BIT
P1.3
;南北红灯
DIN
BIT
P1.6
;串行显示数据
CLK
BIT
P1.7
;串行显示时钟 ORG
0000H
LJ 米 P
START
ORG
0100H START:
LCALL
STATE0
;调用状态 0
LCALL
DELAY
;调用延时
米 OV
T 米 OD,号 01H
;置 T0 工作方式 1
米 OV
TH0, 号 3CH
;置 T0 定时初值 50 米 S
米 OV
TL0, 号 0B0H
SETB
TR0
;启动 T0
CLR
EA LOOP:
米 OV
R2,号 20
;置 1S 计数初值
50 米 S*20=1S
米 OV
R3,号 20
;红灯 20S
米 OV
SECOND1,号 25
;东西秒显示初值 25S
米 OV
SECOND2,号 20
;南北秒显示初值 25S
LCALL
DISPLAY
LCALL
STATE1
;调用状态 1
WAIT1: JNB
TF0,WAIT1
;查询 50 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 50 米 S
米 OV
TL0, 号 0B0H
SETB
TR0
;启动 T0
DJNZ
R2,WAIT1
;判 1S 到否?未到继续状态 1
米 OV
R2,号 20
;置 50 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT1
;状态 1 维持 20S 米 OV
R2,号 5
;置 50 米 S 计数初值
5*4=20
米 OV
R3,号 3
;绿灯闪 3S
米 OV
R4,号 4
;闪烁间隔 200 米 S
米 OV
SECOND1,号 5
;东西秒显示初值 5S
米 OV
SECOND2,号 5
;南北秒显示初值 5S
LCALL
DISPLAY WAIT2: LCALL
STATE2
;调用状态 2
JNB
TF0,WAIT2
;查询 50 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 50 米 S
米 OV
TL0, 号 0B0H
DJNZ
R4,WAIT2
;判 200 米 S 到否?未到继续状态 2
CPL
LED_G1
;东西绿灯闪
米 OV
R4,号 4
;闪烁间隔 200 米 s DJNZ
R2,WAIT2
;判 1S 到否?未到继续状态 2
米 OV
R2,号 5
;置 50 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT2
;状态 2 维持 3S 米 OV
R2,号 20
;置 50 米 S 计数初值
米 OV
R3,号 2
;黄灯 2S
米 OV
SECOND1,号 2
;东西秒显示初值 2S
米 OV
SECOND2,号 2
;南北秒显示初值 2S
LCALL
DISPLAY WAIT3: LCALL
STATE3
;调用状态 3
JNB
TF0,WAIT3
;查询 30 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 50 米 S
米 OV
TL0, 号 0B0H
DJNZ
R2,WAIT3
;判 1S 到否?未到继续状态 3
米 OV
R2,号 20
;置 50 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT3
;状态 3 维持 2S 米 OV
R2,号 20
;置 50 米 S 计数初值
米 OV
R3,号 20
;红灯 20S
米 OV
SECOND1,号 25
;东西秒显示初值 25S
米 OV
SECOND2,号 20
;南北秒显示初值 25S
LCALL
DISPLAY WAIT4: LCALL
STATE4
;调用状态 4
JNB
TF0,WAIT4
;查询 50 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 50 米 S
米 OV
TL0, 号 0B0H
DJNZ
R2,WAIT4
;判 1S 到否?未到继续状态 4
米 OV
R2,号 20
;置 50 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT4
;状态 4 维持 20S 米 OV
R2,号 5
;置 50 米 S 计数初值
5*4=20
米 OV
R4,号 4
;闪烁间隔 200 米 S
米 OV
R3,号 3
;绿灯闪 3S
DEC
SECOND1
;东西秒显示初值 5S
DEC
SECOND2
;南北秒显示初值 5S
LCALL
DISPLAY WAIT5: LCALL
STATE5
;调用状态 5
JNB
TF0,WAIT5
;查询 50 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 100 米 S
米 OV
TL0, 号 0B0H
DJNZ
R4,WAIT5
;判 200 米 S 到否?未到继续状态 5
CPL
LED_G2
;南北绿灯闪
米 OV
R4,号 4
;闪烁 200 米 S
DJNZ
R2,WAIT5
;判 1S 到否?未到继续状态 5
米 OV
R2,号 5
;置 100 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT5
;状态 5 维持 3S
米 OV
R2,号 20
;置 50 米 S 计数初值
米 OV
R3,号 2
;黄灯 2S
DEC
SECOND1
;东西秒显示初值 2S
DEC
SECOND2
;南北秒显示初值 2S
LCALL
DISPLAY WAIT6: LCALL
STATE6
;调用状态 6
JNB
TF0,WAIT6
;查询 100 米 S 到否
CLR
TF0
米 OV
TH0, 号 3CH
;恢复 T0 定时初值 100 米 S
米 OV
TL0, 号 0B0H
DJNZ
R2,WAIT6
;判 1S 到否?未到继续状态 6
米 OV
R2,号 20
;置 100 米 S 计数初值
DEC
SECOND1
;东西秒显示减一
DEC
SECOND2
;南北秒显示减一
LCALL
DISPLAY
DJNZ
R3,WAIT6
;状态 6 维持 2S LJ 米 P
LOOP
;大循环 STATE0:
;状态 0 米 OV
P1,号 0 CLR
LED_G1 SETB
LED_R1
;东西红灯亮 CLR
LED_G2 SETB LED_R2
;南北红灯亮 RET STATE1:
;状态 1 SETB LED_G1
;东西绿灯亮 CLR
LED_R1
CLR
LED_G2 SETB
LED_R2
;南北红灯亮 RET STATE2:
;状态 2 CLR
LED_R1 CLR
LED_G2 SETB
LED_R2
;南北红灯亮 RET STATE3:
;状态 3 SETB
LED_G1 SETB
LED_R1
;东西黄灯亮 CLR
LED_G2 SETB LED_R2
;南北红灯亮 RET STATE4:
;状态 4 CLR
LED_G1 SETB LED_R1
;东西红灯亮 SETB
LED_G2
;南北绿灯亮 CLR
LED_R2 RET STATE5:
;状态 5 CLR
LED_G1 SETB LED_R1
;东西红灯亮 CLR
LED_R2 RET STATE6:
;状态 6 CLR
LED_G1 SETB
LED_R1
;东西红灯亮 SETB LED_G2 SETB
LED_R2
;南北黄灯亮 RET DISPLAY:
;数码显示
米 OV
A, SECOND1
;东西秒寄存器
米 OV
B, 号 10
;16 进制数拆成两个 10 进制数
DIV
AB
米 OV
DBUF+1,A
米 OV
A,B
米 OV
DBUF, A
米 OV
A, SECOND2
;南北秒寄存器
米 OV
B, 号 10
;16 进制数拆成两个 10 进制数
DIV
AB
米 OV
DBUF+3, A
米 OV
A,B
米 OV
DBUF+2, A 米 OV
R0,号 DBUF
米 OV
R1,号 TE 米 P
米 OV
R7,号 4 DP10:
米 OV
DPTR,号 LED 米 AP
米 OV
A,@R0
米 OVC
A,@A+DPTR
米 OV
@R1,A
INC
R0
INC
R1
DJNZ
R7,DP10
米 OV
R0,号 TE 米 P
米 OV
R1,号 4 DP12: 米 OV
R7,号 8
米 OV
A,@R0 DP13: RLC
A
米 OV
DIN,C
CLR
CLK
SETB
CLK
DJNZ
R7,DP13
INC
R0
DJNZ
R1,DP12 RET LED 米 AP: DB
3FH,6,5BH,4FH,66H,6DH ;0,1,2,3,4,5
DB
7DH,7,7FH,6FH,77H,7CH ;6,7,8,9,A,B
DB
58H,5EH,7BH,71H,0,40H ;C,D,E,F, , - DELAY:
米 OV R5, 号 10 DLOOP0: 米 OV
R6, 号 40 DLOOP1: 米 OV
R7, 号 123 DLOOP2:
NOP
NOP
DJNZ R7, DLOOP2
DJNZ R6, DLOOP1
DJNZ R5, DLOOP0
RET
END
仿真图
DIN2CLKDIN3 DIN4DINDIN4CLKDIN3CLKDIN2CLKCLKDIN0000123434340021 12000XTAL218XTAL119ALE30EA31PSEN29RST9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U?AT89C51D2LED-GREEND6LED-GREEND5LED-GREEND9LED-GREEND0LED-REDD11LED-REDD3LED-REDD8LED-REDSRG8RC1/->& 1D1 324561081112913U274HC164R151SRG8RC1/->& 1D1 324561081112913U374HC164R251SRG8RC1/->& 1D1 324561081112913U474HC164R351SRG8RC1/->& 1D1 324561081112913U574HC164R451dx
相关热词搜索: 交通灯 汇编语言 课程设计