流水灯控制,汽车转向灯设计,模拟广告灯设计

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

任务一 流水灯控制

一、任务设计要求

1、基本要求

由单片机组成最小应用系统,利用单片机P1的8个端口,控制8个发光二极管,使之依次点亮,模拟流水灯的效果。 2、技能提高

利用P1口输出控制8个红、黄、绿三种不同颜色的发光二极管,彩灯从两端亮开始逐步向中间收缩,然后向两端扩展,再向中间收缩,如此反复,相邻状态的间隔时间为0.5s ,实现8盏灯的缩展式点亮。

二、设计过程

1.确定设计方案

选用AT89C51 单片机,时钟电路,复位电路,电源,和8个发光 二极管构成最小工作系统,完成对8个信号灯的控制。流水灯最小工作系统方案设计框图如下图所示。

2,硬件电路设计

黄 红 绿 黄 红 绿 红 黄

1 2 3 4 5 6 7 8

8个发光二极

管流水显示

并行接口

AT89C51单片机

电源

时钟电路

复位电路

该任务采用单片机的PI端口来控制8个发光二极管,用Proteus软件进行原理图设计与绘制,电路原理图如下图所示。

3、软件设计

(1)、绘制流程图

(2)、编写源程序:4个程序

LIGHT1 EQU 0FFH

LIGHT2 EQU 7FH

ORG 0000H

LJMP MAIN

ORG 0030H

MAIN:MOV R6,#LIGHT1

MOV R7,#LIGHT2

LOOP:MOV A,R6

ANL A,R7

MOV P1,A

MOV A,R6

RL A

LCALL DELAY

MOV R6,A

MOV A,R7

RR A

MOV R7,A

LCALL DELAY

SJMP LOOP

DELAY:MOV R3,#100

DEL2: MOV R4,#125

DEL1: MOV R5,#10

DEL0: NOP

NOP

DJNZ R5,DEL0

DJNZ R4,DEL1

DJNZ R3,DEL2

RET

END

4、软、硬件调试仿真(效果图)

任务二汽车转向灯设计

一、任务设计要求

1、基本要求

在本任务中,采用四个发光二极管来模拟汽车左、右转灯,分别用单片机的P1.4、P1.5控制左转向灯、P1.6和P1.7来控制右转弯灯的亮、灭状态;驾驶员发出的显示命令用P1.0、P1.1管脚连接左、右转向开关S0和S1进行模拟控制,用开关模拟汽车运行状态或显示命令见表1。

表1 用开关模拟汽车运行状态或显示命令

驾驶员命令

开关状态

S0

S1 驾驶员未发出命令 0 0 驾驶员发出左转显示命令 1 0 驾驶员发出右转显示命令 0 1 驾驶员发出汽车故障显示命令

1

1

控制要求:开关P1.0接+5V 电压时, 左转向灯点亮, 开关P1.1接+5V 电压时, 右转向灯点亮, P1.0 、P1.1同时接+5V 电压时,左、右转向灯同时点亮,P1.0 、P1.1同时接地时,左、右转向灯同时熄灭。 2、技能提高

按照实际情况,转向灯使用时呈闪烁状态。将控制要求改为:

开关P1.0接+5V 电压时, 左转向灯闪烁, 开关P1.1接+5V 电压时, 右转向灯闪烁, P1.0 、P1.1同时接+5V 电压时,左、右转向灯同时闪烁,P1.0 、P1.1同时接地时,左、右转向灯同时熄灭。

二、设计过程

1、设计方案确定

选用AT89C51 单片机,时钟电路,复位电路,电源,4个发光 二极管和2组开关构成最小工作系统,模拟汽车转向灯的控制。其设计框图如图所示。

2.硬件电路设计

8个发光二极管

流水显示

并行接口

AT89C51单片机

电源

时钟电路

复位电路

发光二极管显示

该任务采用单片机的P1口的P1.4~P1.7来控制4个发光二极管,用P1.0和P1.1接S0和S1两个开关,用Proteus 软件进行原理图设计和绘制,电路原理图如下图所示。 3、软件设计

(1)、绘制流程图

N

Y

N Y N N

Y

Y

Y

汽车转向灯闪烁控制程序流程图

延时子程序流程图

(2)、编写源程序:2个程序

ORG 0000H

开始

关灯,开关初始化

右转向灯亮 P1.0=1? P1.1=1?

左、右转向灯同时点亮

左转向灯亮

延时

延时 延时

右转向灯熄灭

左右转向灯同时熄灭

左转向灯点亮

关灯

外循环次数0FFH →R3

内循环次数0FFH →R4

空操作

P1.1=1?

开始

子程序返回

R3-1=0?

R4-1=0?

START:MOV P1,#0FH

LOOP: JNB P1.0,AA

JB P1.1,BB

MOV P1,#3FH

LCALL DELAY

MOV P1,#00H

0012 80EF

SJMP LOOP

BB: MOV P1,#0FFH

LCALL DELAY

MOV P1,#00H

LJMP LOOP

AA: JB P1.1,CC

MOV P1,#0FH

LCALL DELAY

SJMP LOOP

CC: MOV P1,#0CFH

LCALL DELAY

MOV P1,#00H

LJMP LOOP

DELAY:MOV R3,#0CFH

DEL2: MOV R4,#0FFH

DEL1: NOP

NOP

DJNZ R4,DEL1

DJNZ R3,DEL2

RET

END

4、软、硬件调试仿真(效果图)

相关文档
最新文档