简易多彩广告灯控制设计 精品Word文档格式.docx

上传人:b****1 文档编号:14278506 上传时间:2022-10-21 格式:DOCX 页数:19 大小:802.62KB
下载 相关 举报
简易多彩广告灯控制设计 精品Word文档格式.docx_第1页
第1页 / 共19页
简易多彩广告灯控制设计 精品Word文档格式.docx_第2页
第2页 / 共19页
简易多彩广告灯控制设计 精品Word文档格式.docx_第3页
第3页 / 共19页
简易多彩广告灯控制设计 精品Word文档格式.docx_第4页
第4页 / 共19页
简易多彩广告灯控制设计 精品Word文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

简易多彩广告灯控制设计 精品Word文档格式.docx

《简易多彩广告灯控制设计 精品Word文档格式.docx》由会员分享,可在线阅读,更多相关《简易多彩广告灯控制设计 精品Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

简易多彩广告灯控制设计 精品Word文档格式.docx

2周

设计成绩:

2013年6月26日

目录

1、课程设计目的

1.1原始数据及主要任务…………………………………………………………………2

1.2技术要求………………………………………………………………………………2

2、课程设计正文

2.1硬件设计………………………………………………………………………………2

2.1.1确定硬件电路总体设计方案……………………………………………………2

2.1.2单元电路设计……………………………………………………………………3

2.1.2.1时钟电路……………………………………………………………………3

2.1.2.2复位电路……………………………………………………………………3

2.1.2.3键盘输入电路………………………………………………………………4

2.1.2.4数字显示电路………………………………………………………………5

2.1.2.5广告灯电路…………………………………………………………………5

2.1.2.6总电路图……………………………………………………………………6

2.1.3系统调试…………………………………………………………………………7

2.2软件设计………………………………………………………………………………7

2.2.1系统分析…………………………………………………………………………7

2.2.2系统设计…………………………………………………………………………8

2.2.2.1按键确认程序………………………………………………………………8

2.2.2.2数码管显示程序……………………………………………………………8

2.2.2.3延时程序……………………………………………………………………8

2.2.2.4.四种广告灯控制程序………………………………………………………8

2.2.3系统实施…………………………………………………………………………9

3、课程设计总结……………………………………………………………………………17

4、参考文献…………………………………………………………………………………18

1、课程设计目的

1.1原始数据及主要任务

设计并制作出一个以单片机为核心的彩灯闪烁控制系统:

(1)确定总体设计方案

(2)、设计键盘输入电路(3)、设计显示电路(4)、合理分配地址,编写系统程序(5)、利用Protel设计硬件电路原理图和PCB图(6)、软硬件联机调试

1.2技术要求

设计一个以MCS-51单片机为核心的简易多彩广告灯闪烁控制系统,2位数码管显示闪烁控制方案,分别显示01、02、03、和10号方案,初始化为00,彩灯灭;

2个控制按键,一个加一数字键,一个确定键,循环10个花型的方案。

方案01为左循环亮一秒闪烁;

方案02为右循环亮一秒闪烁;

方案03为“100000000、11000000…11111111”递增间隔1秒闪烁;

方案10为“01010101,10101010”间隔一秒闪烁;

其余方案灯灭。

2.1硬件设计

2.1.1确定硬件电路总体设计方案

根据设计要求,首先确定硬件的主要组成部分,主要包括了单片机最小系统中的时钟电路、复位电路和本课设需要的按键控制电路、LED灯显示电路、广告灯方案显示电路,最后由5V直流电源对各部分电路提供电源。

总的设计框图如图1。

2.1.2单元电路设计

2.1.2.1时钟电路

时钟电路提供的时钟信号是单片机工作时必须的控制信号,只有正确的提供了时钟信号,单片机才能严格按照时序执行指令进行工作。

时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。

常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种事外部时钟方式。

本课设采用的是内部时钟方式。

内部是中方式的时钟电路由一个6MHz的晶振和两个30pF的电容组成,时钟电路的电路图如图2。

2.1.2.2复位电路

复位是单片机的初始化操作,除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态,为摆脱死锁状态,也需要复位按键使RST引脚为高电平使单片机复位。

本课设采用51单片机典型手动复位电路,电路由一个200Ω的电阻、一个1KΩ的电阻和一个22uF的极性电容组成。

当按下复位键后复位口RST变为高电平,经过两个机器周期单片机复位,单片机从地址为0000H处重新执行程序。

复位电路的电路图如图3。

2.1.2.3键盘输入电路

本课设的键盘输入电路由一个加一键和一个确定键组成,每个按键都接一个1KΩ的上拉电阻。

加一键控制方案类型,并通过显示电路的显示,共有10种方案类型,其中第01、02、03、10号方案对应有相应的广告灯显示方案,其余为广告灯全灭。

确定键确定方案让广告灯开始闪亮。

键盘输入电路如图4.

2.1.2.4数字显示电路

数字显示电路主要有两个共阳极数码管组成,采用静态显示方案,将共阳极数码管的段码由P0、P2口输出,驱动数码管显示。

每条支路加一个200Ω的限流电阻。

显示电路复位后显示00,当不断按下加一键是,数码管分别显示01、02、03、04、05、06、07、08、09、10,分别对应十种相应的显示方案。

显示电路电路图如图5.

2.1.2.5广告灯电路

广告灯电路为本课设主要控制的电路,由八个发光二极管组成,每个发光二极管接一个200Ω的限流电阻。

广告灯电路如图6.

当确定键按下后,广告灯即开始按照数码管显示的数字显示不同的闪亮方案,其中方案01为左循环亮一秒闪烁;

2.1.2.6总电路图

总电路如图7.

2.1.3系统调试

首先在proteus中画好电路图,加载程序查看仿真效果。

对不满足要求的地方,首先检察设计思路是否正确,在设计思路正确的前提下针对错误的类型检察硬件的选择和对应软件的设计是否正确,发现错误后首先考虑是否可以通过改变软件来实现,软件不能实现的再考虑改变硬件电路实现。

本课设在仿真调试中遇到的难点主要是对加一键的确定,由于在方案运行时要求加一键仍然有效,而每种方案中的延时程序与按键的延时去抖程序相互交错,给确定加一键的一次有效按下带来了很大的困难,经常出现按时间短了没有效果,按时间长了又会确认两次的情况。

最后几经修改才打到了要求的效果,当上一种方案正在运行时,按下加一键不要松开,等广告灯全灭后再松开,可使加一键每次都成功确认一次。

在硬件实物做好后,加载程序调试,对与仿真情况不符的电路检察焊接情况和硬件的好坏。

最后对操作的流畅性进行完善,使硬件电路易于操作,不会出现错误判断。

在硬件调试时,本课设遇到的困难主要是由于查阅资料时的疏漏我们把数码管的c脚和e脚接反了,导致数字无法正常输出。

由于硬件电路已经完成,要改动是比较复杂的。

后来在研究是发现,所谓的数码管段码其实是人为规定的,变动硬件中的c脚和e脚与变动程序中的c、e两脚对应的电平是一样,所以我将书中的共阳极数码管段码“根据”我们电路进行了修改,换了c、e对应的电平。

重新编译加载后,果然显示正常了,从而避免了对硬件的修改。

2.2软件设计

2.2.1系统分析

本课设的程序主要分为按键确认、延时、数码管显示和四种广告灯控制几部分。

按键确认采用典型的延时去抖法,是按键每次按下都只被有效确认一次。

延时程序主要用于去抖和广告灯闪亮间隔的控制,数码管显示则是给相应的P口赋值段码。

四种广告灯控制用于控制8个发光二极管的闪亮顺序和个数。

程序设计的总框图如图8.

2.2.2系统设计

2.2.2.1按键确认程序

通过voidkey_detect()子函数采集相应的P口的电平判断按键是否按下,程序见系统实施中的源程序。

2.2.2.2数码管显示程序

通过voiddisplay(void)子函数来显示相应的方案数,程序见系统实施中的源程序。

2.2.2.3延时程序

通过voiddelay(unsignedint)子函数来完成延时功能,程序见系统实施中的源程序。

2.2.2.4.四种广告灯控制程序

通过分别调用voidright_loop()、voidleft_loop()、voidother_program()、voidji_ou()四种子函数来显示相应的闪烁方案,程序见系统实施中的源程序。

2.2.3系统实施

本课设所用源程序如下:

#include<

reg52.h>

intrins.h>

unsignedcharcode

table[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};

unsignedintflag=0;

voidkey_detect(void);

voiddisplay(void);

voiddelay(unsignedint);

voidright_loop();

voidleft_loop();

voidother_program();

voidincrease();

voidji_ou();

sbitk1=P0^0;

//加一键

sbitk2=P0^1;

//确定键

voidmain()

{

while

(1)

{

key_detect();

if(flag==11)

{flag=0;

}

display();

}

}

/****************************************

函数功能:

实现任务一:

流水灯左循环亮1秒闪烁

****************************************/

voidleft_loop()

{

unsignedchartemp;

temp=0x7f;

{

temp=_crol_(temp,1);

delay(100);

P1=temp;

P1=0xff;

if(k1==0)

{

P1=0xff;

//灯全灭

delay(20);

if(k1==0)

{

P1=0xff;

flag++;

delay(10);

while(!

k1);

//检测是否松开按键r

break;

}

实现任务二:

流水灯右循环亮1秒闪烁

voidright_loop()

temp=0xfe;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1