彩灯循环控制系统方案设计书大学本科方案设计书.docx
《彩灯循环控制系统方案设计书大学本科方案设计书.docx》由会员分享,可在线阅读,更多相关《彩灯循环控制系统方案设计书大学本科方案设计书.docx(21页珍藏版)》请在冰点文库上搜索。
彩灯循环控制系统方案设计书大学本科方案设计书
湖北大学知行学院
毕业论文
题目彩灯循环控制系统设计
姓名廖敏学号0711070020
专业年级电子科学与技术0701
指导教师王春波职称教授
下发任务书日期:
2011年3月6日
1摘要………………………………………………………………………………3
2工程分析…………………………………………………………………………4
2.1需求分析……………………………………………………………………4
2.2功能模块分析和方案设计…………………………………………………4
3硬件设计…………………………………………………………………………5
3.1元器件参数选择……………………………………………………………6
3.2单片机引脚说明……………………………………………………………8
3.3单片机引脚图………………………………………………………………10
3.4主控模块电路设计…………………………………………………………11
3.5电路总体设计图…………………………………………………………12
4焊接与调试………………………………………………………………………12
4.1组装成品焊接………………………………………………………………13
4.2检测与调试…………………………………………………………………14
5软件设计…………………………………………………………………………14
5.1程序设计定义……………………………………………………………15
5.2彩灯闪烁花型………………………………………………………………15
5.3单片机C程序设计…………………………………………………………16
5.4电路开发流程………………………………………………………………19
5.5设计结果分析………………………………………………………………19
6心得体会…………………………………………………………………………20
7参考文献…………………………………………………………………………20
彩灯循环控制系统设计
摘要:
节日彩灯是生活中常常用到的装饰物品。
在考虑到制作成本的前提下,根据单片机具有集成度高、体积小、运行可靠、价格低廉等许多独特的优点,我们集中地运用了单片机、LED等技术,来实现对各色彩灯的自动控制,它是典型的基于单片机的电子产品。
本文以8051单片机为主控核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,利用软件对彩灯进行控制,实现彩灯在开启时满足不同的循环点亮方式,按键的控制可以使彩灯实现不同的花型,使彩灯变化多样。
系统具有体积小、硬件少、电路结构简单及容易操作等优点。
关键词:
彩灯;8051单片机;循环点亮
Thecolourfullampcirculatingcontrolsystemdesigns
Abstract:
Thecolourfullampistheadornmentarticlethatusuallyusesinthelife,Atinconsiderationofmanufacturethepremiseofcostdown,havetheintegrationdegreehigher-accordingtotheunipoleslabmachinetool,smallvolume,run-timefirm,pricemoderateetc.ismanyspecialmerits,Weconcentratetheearthmadeuseofunipoleslabtechniques,suchasmachineandLED...etc.,carryouttheautomaticcontroltoeachcolorlamp,itisatypicalearthaccordingtotheelectronproductofunipoleslabmachine.
Thistextregarding8051machinesasprinciplecontrolnucleus,adoptthemoldmassdesignschemeforturning,makeuseofLEDcolourfulcompositiontelephones,suchaslampandkey...etc.,makeuseofthesoftwarecarriesonacontroltothecolourfullampandcarriesoutacolourfullamptosatisfydifferentcyclictransformationtoclickabrightmodewhileopening,thecontrolofkeycanmakethecolourfullampcarryoutadifferentflowertypeandmakecolourfullampchangediverse.Thesystemhasavolumesmall,littlehardware,thetelephonestructureiseasilysimpleandoperateetc.Merit.
Keywords:
Colourfullamp;8051machines;Circularlyclickbright
第二部分工程分析
2.1需求分析
随着经济的迅速发展,人们需要进一步地提高生活质量、美化生活环境,利用各种彩灯来装饰街道、房屋建筑和咖啡屋等已经成为一种时尚。
现在许多在时尚圈的年轻人,他们的摩托车、自行车都“镶嵌”了这样的灯饰,给爱车装上闪灯后时尚又拉风。
除此之外,眼下,手机用闪灯装饰、风筝上安装彩灯也渐渐成为了时尚,都是为了更钻更光泽。
“装灯族”正流行,LED彩灯需求正旺,极具市场竞争力。
这种“载入灯”系列无处不在,给企业带来了许多商机。
LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
目前,市场上各式样的LED彩灯控制器大多数用全硬件电路实现。
电路结构复杂、功能单一,制成品只能按照固定模式闪亮,无法根据不同场合或不同时问段的需要来调节亮灯时间、模式、闪烁频率等动态参数。
这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。
此外,从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。
因此,有必要对现有的霓虹灯控制器进行改进。
与市面上大多数的LED彩灯相比,该种彩灯具有灵活多变的点亮方式,性价比更高,与普通的全硬件LED彩灯相比具有更好的经济效益。
2.2功能模块分析和方案设计
本文提出了一种基于AT89C52单片机的彩灯控制设计,实现对LED彩灯的控制。
本设计是以单片机P0口和P2口作为16路LED彩灯的输出(提供5V工作电源),AT89C52单片机作为主控核心(提供5V工作电源),在主控模块上包含振荡电路和复位电路。
整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上P3口的按键对编写的若干种亮灯模式进行控制。
该系统原理简单,主要利用单片机的可编程控制原理,由硬件和软件两部分组成。
其硬件包CPU-8051单片机、I/O接口及其扩展、EPROM及其扩展、各色彩灯等几个方面。
软系统由主程序及不同的延时子程序构成。
由于控制程序存储在AT89C52单片机的电可擦除Flash闪存EPROM中,如果用户需要更改系统的亮灯模式Model_i,无须改变系统硬件电路,只需修改其中程序即可,是一种很有发展前途的彩灯控制器。
第三部分硬件设计
单片机(SCM)是单片微型计算机(SingleCHipMicrocomputer)的简称。
它是把中央处理器CPU、随机存储器RAM、只读存储器ROM、I/O接口电路、定时/计数器以及输入输出适配器都集成在一块芯片上,构成一个完整的微型计算机,通过程序可以实现智能控制。
随着SCM在技术上、体系上不断扩展其控制功能,国际上已经采用MCU(MicroControllerUnit)代替单片机的名词。
它的最大优点是体积小,可放在仪表内部。
但存储量小,输入输出适配器简单,功能较低。
目前,单片机在民用和工业测控领域得到最广泛的应用,早已深深地融入人们的生活中。
近年来,8051在我国非常流行,8051是一种低功耗/低电压、高性能的八位CMOS单片机,片内有一个4KB的FLASH可编程可擦除只读存储器(FPEROM—FlasHProgrammableandErasableReadOnlyMemory),它采用了CMOS工艺和ATMEL公司的高密度非易失性存储器技术,而且其输出引脚和指令系统都与MSC—51兼容。
片内置通用8位中央处理器(CPU)和FLASH存储单元,片内的存储器允许在系统内改编程序或用常规的非易失性存储器编程。
因此,8051是一种功能强、灵活性高且价格合理的单片机,可方便的应用于各种控制领域。
它最大的特点是内部有可以多次重复编程的闪烁ROM,并且闪烁ROM可以直接用编程器来擦写(电擦写),使用起来比较方便。
在本系统中,8051单片机的P3口用于接按键,方便使用者选择方式。
P0口、P2口接的是16路LED彩灯。
3.1元器件参数选择
1、LED发光二极管(*16):
单向导电性,只有电流从正极流过时才能发光。
它是以低功耗发光,额定电压约为2V,额定电流约为10MA。
LED发光二极管的特点是:
工作电压很低(有的仅一点几伏);工作电流很小(有的仅零点几毫安即可发光);抗冲击和抗震性能好,可靠性高,寿命长;通过调制通过的电流强弱可以方便地调制发光的强弱。
注:
LED要正常工作必须遵守两个原则,一是引脚连接顺序,二是要接上拉电阻。
图1:
LED彩灯
2、电阻(220Ω*16+10KΩ*1):
R=(5V-2V)/10MA=300Ω,根据电路特性计算出电阻大小约为300Ω,电阻的购买情况:
220Ω、270Ω、330Ω。
考虑到电阻越小亮度越高,所以我们选择220Ω。
3、单片机:
AT89C52(8051)
图2:
AT89C52
4、芯片插座:
方便取放芯片。
芯片可重复编程十万次,更换程序时对芯片进行擦除。
5、电解电容(10uF*1):
在复位引脚上,区分正负极。
其正极应与电源电压的正极端相连,阴极与电源电压的负极相连接,不能接反,否则会损坏电容器。
6、瓷片电容(22pF*2):
在晶振引脚上,没有正负极。
7、晶振(12M*1)
8、按键
9、电源供电:
单片机8051工作电压是5V。
测试中电压在4.5~5.5都可以。
补充:
这里介绍三种电源供电方式
①电脑USB接口。
②普通手机或MP3的充电器(5.5V)
③三节5号电池。
3.2单片机引脚说明
1、32个用户引脚:
单片机与外界进行沟通的引脚,在本设计中只使用了16个引脚,即用8051控制16路的彩灯。
(1)P0端口(P0.0~P0.7)八个引脚:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
(2)P1端口(P1.0~P1.7)八个引脚:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
(3)P2端口(P2.0~P2.7)八个引脚:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
(4)P3端口(P3.0~P3.7)八个引脚:
P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。
P3口也可作为8031的一些特殊功能口
P3口同时为闪烁编程和编程校验接收一些控制信号。
2、8个系统引脚:
系统引脚是关系到单片机是否能正常工作的引脚。
(1)能量引脚:
VCC(40)(供电5V)、GND(20)(接地)
(2)复位引脚:
RST(9)(死机复位)
在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。
复位后P3.0-P3.7口均置1,引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。
复位操作不会对内部RAM有所影响。
(3)心脏引脚:
XTAL1(19)反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2(20)来自反向振荡器的输出。
(晶振引脚,提供时序、脉冲)
(4)内存扩展:
EA(31)、ALE(30)、PSEN(29)(添加硬盘等)
(单片机内部有4KB的存储器)
3.3单片机引脚图
图1:
8051引脚图
3.4主控模块电路设计(最小电路图):
图2:
AT89C52引脚图
最小电路由振荡电路和复位电路组成。
振荡电路:
在X1和X2引脚之间外接晶体振荡器及2个谐振电容,就可以构成内部时钟电路。
内部时钟电路的晶体振荡频率一般在4~12MHZ之间,这里我们选择12MHZ。
谐振电容采用20到30pF之间的瓷片电容,这里我们选择22pF。
复位电路:
单片机的复位就是对单片机的初始化操作,使单片机内部各寄存器处于一个确定的初始状态。
复位的实现通常可以采用开机上电复位和外部手动复位两种方式。
图示中为开机上电复位,加电瞬间RST端的电位与VCC相同,随着RC电路充电电流的减小,RST端得电位逐渐下降,只要保持10ms以上的高电平就能使单片机有效复位。
3.5电路总体设计图
图3:
电路总体设计图
第四部分焊接与调试
4.1组装成品焊接
安装之前首先根据所设计的电路图将元器件清单列出,领取原件。
仔细查看是否有坏的,以免在调试时出现不必要的麻烦。
查阅一些器件的引脚图,了解各引脚的功能和接法。
然后根据实物和原理图在面板上做好规划,插的时候一定要固定住,以免接触不良。
导线一定要理顺,不能杂乱无章,不方便以后的检查调试。
4、电烙铁的选择
电烙铁的功率应由焊接点的大小决定,焊点的面积大,焊点的散热速度也快,所以选用的电烙铁功率也应该大些。
一般电烙铁的功率有20W、25W、30W、35W、50W等等。
选用30W左右的功率比较合适。
5、焊锡和助焊剂
焊锡:
焊接电子元件一般采用有松香芯的焊锡丝。
这种焊锡丝熔点较低,而且内含松香助焊剂,使用极为方便。
助焊剂:
常用的助焊剂是松香或松香水(将松香溶于酒精中)。
使用助焊剂,可以帮助清除金属表面的氧化物,利于焊接,又可以保护烙铁头。
焊接较大元件或导线时,也可采用焊锡膏。
但它有一定的腐蚀性,焊接后应及时清除残留物。
6、辅助工具
为了方便焊接操作常采用烙铁架、尖嘴钳、镊子和小刀等作为辅助工具,应正确使用这些工具。
7、焊接方法
电烙铁经过长时间使用后,烙铁头部会生成一层氧化物,这时它就不容易吃锡,这时可以用小刀刮掉氧化层,将烙铁通电后等烙铁头部微热时插入松香,涂上焊锡即可继续使用。
新买来的电烙铁也必须先上锡后才能使用,电烙铁是最常用的焊接工具。
8、焊接注意事项:
1、电烙铁使用中,不能用力敲击,要防止跌落。
烙铁头好上焊锡过多时,可用布擦掉,不可乱甩,以防止烫伤他人。
2、焊接过程中,烙铁不能到处乱放。
不焊时,应放在烙铁架上,注意防止电源线搭在烙铁头上,否则会烫坏绝缘层而发生事故。
3、焊接时焊点要小、焊时不能过长,使焊点光亮美观。
4、各芯片需弄清各引脚功能,一定要接地和接电源。
5、导线引脚不能过长,以免造成短路。
6、使用结束后,应及时切断电源,拔下电源插头。
冷却后,再将电烙铁收回工具箱。
4.2检测与调试
(1)静态调试
第一步:
在系统进行加电之前,对照电路图和实际线路检查连线是否正确,包括错接、少接、多接等,尤其是电源的走线和系统总线;用万用表电阻档检查焊接和接插是否良好,看是否出现虚焊现象;元器件引脚之间有无短路,连接处有无接触不良,二极管、电解电容的极性是否正确;电源供电包括极性、信号源连线是否正确;电源对地是否存在短路(用万用表测量电阻)。
第二步:
加电后检查IC插件上引脚的电位,根据硬件电路原理图检查各点的电位是否正常,并重点检查单片机插脚的各点电位。
第三步:
在不加电的情况下,除单片机外,插上所有的元器件。
上电后,用万用表电压档检测电源电压,观察有无异常现象:
如冒烟、异常气味,手摸元器件有无发烫现象,电源短路等,如发现异常情况,立即切断电源,排除故障如无异常情况,分别测量直流电压是否工作在正常工作状态下,如不符,则调整电路元器件参数、更换元器件等。
然后用仿真头将系统电路板的单片机插脚和仿真器插口相连,为联机调试做好准备。
(2)通电调试
接通电源,再接上仿真器,观察实现效果能否达到预期目的。
如果不能,将仿真器单步运行,查看每一步的运行结果,并对照预期现象对程序进行整理。
第五部分软件设计
5.1程序设计定义
程序设计(Programming)是指设计、编制、调试程序的方法和过程。
它是目标明确的智力活动。
在进行微机控制系统设计时,除了系统硬件设计外,大量的工作就是如何根据每个生产对象的实际需要设计应用程序。
因此,软件设计在微机控制系统设计中占重要地位。
对于本系统,软件也占有重要的地位。
在单片机控制系统中,大体上可分为数据处理、过程控制两个基本类型。
数据处理包括:
数据的采集、数字滤波、标度变换等。
过程控制程序主要是使单片机按一定的方法进行计算,然后再输出,以便控制生产。
为了完成上述任务,在进行软件设计时,通常把整个过程分成若干个部分,每一部分叫做一个模块。
把一个程序分成具有多个明确任务的程序模块,分别编制、调试后再把它们连接在一起形成一个完整的程序,这样的程序设计方法称为模块化程序设计。
所谓“模块”,实质上就是能完成一定功能,并相对独立的程序段,这种程序设计方法称为模块程序设计法。
模块程序设计法的主要优点是:
(1)单个模块比起一个完整的程序易编写、调试及修改。
(2)程序的易读性好。
(3)程序的修改可局部化。
(4)模块可以共存,一个模块可以被多个任务在不同条件下调用。
(5)模块程序允许设计者分割任务和利用已有程序,为设计者提供方便。
5.2彩灯闪烁花型
花型1:
单个右移、左移。
花型2:
16路彩灯先从左至右逐路点亮,到全亮后再从右至左逐路熄灭,循环演示。
花型3:
16路彩灯同时亮灭,亮、灭节拍交替进行。
花型4:
两两右移。
花型5:
16路彩灯每次8路灯亮,8路灯灭,且亮、灭相间,交替亮灭。
花型6:
16彩灯分成左、右8路,两两向外扩散。
花型7:
16路彩灯分成左、右8路,左8路从左至右逐路点亮、右8路从右至左逐路点亮,到全亮后,左8路从右至左逐路熄灭,右8路从左至右逐路熄灭,循环演示。
花型8:
左、右8路,两边三个灯依次右移点亮,再左移点亮。
5.3单片机C程序设计
#include//51系列单片机定义文件
#defineucharunsignedchar//定义无符号字符
#defineuintunsignedint//定义无符号整数
sbitkey=P3^0。
uintn=0。
voidDelayMS(uintx)//声明延时函数
{
uchart。
while(x--)for(t=0。
t<120。
t++)。
}
voidkeyscan()
{
if(key==0)//检测有键按下
{
DelayMS(10)。
if(key==0)//确认键被按下
{
while(key==0)。
//等待键释放
++n。
if(n==3)n=0。
}
}
}
ucharcodePattern_P0[]=
{
0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,
0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,
0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,
0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,
0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,
0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff
}。
ucharcodePattern_P2[]=
{
0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0xff,
0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,
0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,
0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf