简易多彩广告灯控制参考模板
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息与电气工程学院
课程设计说明书(2012 /2013学年第二学期)
课程名称:单片机原理及接口技术
题目:简易多彩广告灯控制设计
专业班级:自动化10-03
学生姓名:
学号: 1004103
指导教师:苗敬利、杨怡君等
设计周数: 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、课程设计正文
2.1硬件设计
2.1.1确定硬件电路总体设计方案
根据设计要求,首先确定硬件的主要组成部分,主要包括了单片机最小系统中的时钟电路、复位电路和本课设需要的按键控制电路、LED灯显示电路、广告灯方案显示电路,最后由5V直流电源对各部分电路提供电源。总的设计框图如图1。
图1 硬件设计总框图
2.1.2单元电路设计
2.1.2.1时钟电路
时钟电路提供的时钟信号是单片机工作时必须的控制信号,只有正确的提供了时钟信号,单片机才能严格按照时序执行指令进行工作。时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。常用的时钟电路设计有两种方式,一种是内部时钟方式,另一种事外部时钟方式。本课设采用的是内部时钟方式。
内部是中方式的时钟电路由一个6MHz 的晶振和两个30pF 的电容组成,时钟电路的电路图如图2。
2.1.2.2复位电路 复位是单片机的初始化操作,除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态,为摆脱死锁状态,也需要复位按键使RST 引脚为高电平使单片机复位。
本课设采用51单片机典型手动复位电路,电路由一个200Ω的电阻、一个1K Ω的电阻和一个22uF 的极性电容组成。当按下复位键后复位口RST 变为高电平,经过两个机器周期单片机复位,单片机从地址为0000H 处重新执行程序。复位电路的电路图如图3
。
图2 时钟电路
图3 复位电路
2.1.2.3键盘输入电路
本课设的键盘输入电路由一个加一键和一个确定键组成,每个按键都接一个1KΩ的上拉电阻。
加一键控制方案类型,并通过显示电路的显示,共有10种方案类型,其中第01、02、03、10号方案对应有相应的广告灯显示方案,其余为广告灯全灭。确定键确定方案让广告灯开始闪亮。键盘输入电路如图4.
图4 键盘输入电路
2.1.2.4数字显示电路
数字显示电路主要有两个共阳极数码管组成,采用静态显示方案,将共阳极数码管的段码由P0、P2口输出,驱动数码管显示。每条支路加一个200Ω的限流电阻。
显示电路复位后显示00,当不断按下加一键是,数码管分别显示01、02、03、04、05、06、07、08、09、10,分别对应十种相应的显示方案。显示电路电路图如图5.
图5 数字显示电路
2.1.2.5广告灯电路
广告灯电路为本课设主要控制的电路,由八个发光二极管组成,每个发光二极管接一个200Ω的限流电阻。广告灯电路如图6.
当确定键按下后,广告灯即开始按照数码管显示的数字显示不同的闪亮方案,其中方案01为左循环亮一秒闪烁;方案02为右循环亮一秒闪烁;方案03为“100000000、11000000…11111111”递增间隔1秒闪烁;方案10为“01010101,10101010”间隔一秒闪烁;其余方案
灯灭。
图6 广告灯电路2.1.2.6总电路图
总电路如图7.
图7 总电路图
2.1.3 系统调试
首先在proteus中画好电路图,加载程序查看仿真效果。对不满足要求的地方,首先检察设计思路是否正确,在设计思路正确的前提下针对错误的类型检察硬件的选择和对应软件的设计是否正确,发现错误后首先考虑是否可以通过改变软件来实现,软件不能实现的再考虑改变硬件电路实现。
本课设在仿真调试中遇到的难点主要是对加一键的确定,由于在方案运行时要求加一键仍然有效,而每种方案中的延时程序与按键的延时去抖程序相互交错,给确定加一键的一次有效按下带来了很大的困难,经常出现按时间短了没有效果,按时间长了又会确认两次的情况。最后几经修改才打到了要求的效果,当上一种方案正在运行时,按下加一键不要松开,等广告灯全灭后再松开,可使加一键每次都成功确认一次。
在硬件实物做好后,加载程序调试,对与仿真情况不符的电路检察焊接情况和硬件的好坏。最后对操作的流畅性进行完善,使硬件电路易于操作,不会出现错误判断。
在硬件调试时,本课设遇到的困难主要是由于查阅资料时的疏漏我们把数码管的c脚和e脚接反了,导致数字无法正常输出。由于硬件电路已经完成,要改动是比较复杂的。后来在研究是发现,所谓的数码管段码其实是人为规定的,变动硬件中的c脚和e脚与变动程序中的c、e两脚对应的电平是一样,所以我将书中的共阳极数码管段码“根据”我们电路进行了修改,换了c、e对应的电平。重新编译加载后,果然显示正常了,从而避免了对硬件的修改。
2.2软件设计
2.2.1系统分析
本课设的程序主要分为按键确认、延时、数码管显示和四种广告灯控制几部分。
按键确认采用典型的延时去抖法,是按键每次按下都只被有效确认一次。延时程序主要用于去抖和广告灯闪亮间隔的控制,数码管显示则是给相应的P口赋值段码。四种广告灯控制用于控制8个发光二极管的闪亮顺序和个数。程序设计的总框图如图8.