《单片机应用技术》程设计指导书.doc
文本预览下载声明
《单片机应用技术》课程设计指导书
通过前面各章的学习,我们已经掌握了单片机的基本工作原理和程序设计方法、存储器和I/O接口的扩展方法等。它们是设计单片机应用系统的软件和硬件基础。有了这些基础以后,就可以进行单片机应用系统的设计与开发了。
本课程设计通过典型单片机应用系统设计的分析,将所学知识加以系统化,并进一步学习和领会单片机应用系统的设计、开发和调试的思路、技巧和方法。
任务一 交通信号灯模拟控制
设计一个单片机控制交通信号灯,使其能模拟城市“十字”路口交通信号灯的功能,并能进行某些特殊控制。所谓模拟,就是以绿、黄、红色三支共两组(因为东、西方向信号灯的变化情况相同,用一组发光二极管;南、北方向信号灯的变化情况相同,用一组发光二极管。故为二组)发光二极管(LED)表示交通信号灯,以按动按键表示车辆的到达。
根据路口情况及控制要求的不同,把交通信号灯控制分为以下几种类型。
一、定时交通信号灯控制
在双干线的“十字”路口上,交通信号灯的变化是定时的,其基本变化规律如下:
A: 放行线:绿灯亮放行25s,黄灯亮警告5s,然后红灯亮禁止。
B: 禁行线:红灯亮禁止30s,然后绿灯亮放行。
1.具体设计要求:
(1)该设计能控制东、西、南、北四个路口的红、黄、绿信号灯正常工作。
(2) 当东西方向放行、南北方向禁行时,东西方向绿灯亮25s,然后黄灯亮5s;南北方向红灯亮30s。
(3) 当南北方向放行、东西方向禁行时,南北方向绿灯亮25s,然后黄灯亮5s;东西方向红灯亮30s。
当使两条路线交替地成为放行线和禁行线时,就可以实现定时交通控制。
2.设计方案
(1) 芯片选择 为了实现上述设计要求,可以用8051单片机芯片。用8051芯片的P1口(P1.0~P1.5)分别接上两组六位信号灯。
(2) 延时的实现 延时的实现可以是通过软件实现;也可利用定时器/计数器的定时工作方式实现;还可以通过扩展8155芯片,利用其中的定时器/计数器实现延时。本系统使用软件延时。
3. 硬件设计
(1) 电路原理图
交通信号灯的控制电路中的核心是8051单片机,其内部带有4KB的ROM,无须扩展程序存储器;交通灯的控制没有大量的运算和暂存数据,8051芯片内的128B RAM已能满足要求,所以也不必外扩RAM。
电路原理图如下图所示。
定时交通信号灯控制原理图
(2) 信号灯的控制及控制编码
由图11-1所示可知,P1.0~P1.3控制东西方向的信号灯(用A线表示);P1.4~P1.5控制南北方向的信号灯(用B线表示)。6只发光二极管是以共阳极连接,所以相应口线输出高电平则“信号灯”灭;口线输出低电平则“信号灯”亮。为了实现上述控制要求,P1口共输出4种控制码,如表11-1表所示。
“信号灯”控制码表
P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0 控
制
码 状态说明 (空) (空) B线绿灯 B线黄灯 B线红灯 A线绿灯 A线黄灯 A线红灯 0
0
0
0 0
0
0
0 1
1
0
1 1
1
1
0 0
0
1
1 0
1
1
1 1
0
1
1 1
1
0
0 33H
35H
1EH
2EH A线放行,B线禁行
A线警告,B线禁行
A线禁行,B线放行
A线禁行,B线警告
4.软件设计
(1) 流程图
按上表所示控制码的顺序实现“信号灯”的控制。流程图如下:
(2) 参考源程序
ORG 1000H
MAIN: MOV P1,#33H ;A线放行,B线禁行
MOV R7,#19H ;延时秒数
MAIN1: LCALL DELAY ;1s延时子程序
DJNZ R7,MAIN1
MOV P1,#35H ;A线警告,B线禁行
MOV R7,#05H ;延时数秒
MAIN2: LCALL DELAY ;1s延时子程序
DJNZ R7,MAIN2
MOV P1,#1EH ;A线禁行,B线放行
MOV R7,#19H
MAIN3: LCALL DELAY
DJNZ R7,MAIN3
MOV P1,#2EH ;A线禁行,B线警告
MOV R7,#05H
MAIN4: LCALL DELAY
DJNZ R7,MAIN4
AJMP MAIN
DELAY: MOV R0,#64H ;延时1S子程序
DEL2: MOV R1,#0AH
DEL1: MOV R2,#7DH
DEL0
显示全部