李熙熙.docx
- 文档编号:8803140
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:15
- 大小:66.33KB
李熙熙.docx
《李熙熙.docx》由会员分享,可在线阅读,更多相关《李熙熙.docx(15页珍藏版)》请在冰豆网上搜索。
李熙熙
毕业(论文)设计
基于单片机的节日彩灯控制
院系:
机电工程系
专业:
电子信息工程技术
指导老师:
李晓花
姓名:
李熙熙
班级:
电信二班
学号:
0804110236
撰写日期:
2011年4月18日
商丘职业技术学院毕业(论文)设计任务书
题目:
基于单片机的节日彩灯控制
姓名
李熙熙
学号
0804110236
班级
08电信2班
(论文)设计选题的来源、目的与意义:
介绍了一种新型的LED彩灯控制系统的设计方法,以AT-89C51单片机作为主控核心,与按键、显示器等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制。
单片机与实际生活相应用,怎强动脑与动手能力,温习本章所学内容。
(论文)设计的主要内容:
有关单片节日彩灯的设计
进度计划(进度时间、主要工作内容):
3月份上旬思考论文,中旬找资料,下旬写论文,4月审核内容,争取4月末争取完成任务
主要参考文献:
[1]蔡美琴,张为民,沈新群等.MCS51系列单片机系统及其应用[M].北京:
高等教育出版社,1992
[2]周美娟、肖来胜.《单片机技术及系统设计》[M].清华大学出版社.2007.
[3]张瑛.《单片机实验指导书》[EB].2010.
[4]杨光友.单片机微型计算机原理及接口技术[M].北京:
中国水利水电出版社,2002
(论文)设计工作起讫日期:
2011年3月15日至2011年5月1日
指导教师(签名)
专业教研主任
(签名)
摘 要
介绍了一种新型的LED彩灯控制系统的设计方法,以AT-89C51单片机作为主控核心,与按键、显示器等较少的辅助硬件电路相结合,利用软件实现对LED彩灯进行控制。
本系统具有体积小、硬件少、电路结构简单及容易操作等优点。
关键词:
LED彩灯,AT89C51单片机,彩灯控制器,模块设计
Abstract
Thispaperintroducethedesignwayofanew-styleLEDlampioncontrolsystemthatusedAT-89C51singlechipasthecontrol-core,combinedwithlittleassistanthardwaresuchaskeyboard&display,andtooksofewareprogramtocontrolLEDlampion.Thissystemhadthemeritsofsmallvolume,fewofhardwares,circuitconfigurationsimpleandeasytooperate,andsoon,
Keywords:
LEDlampion;AT-89C51singlechip;lampioncontroller;moduledesign
目录
引言····························································5
1第一章系统功能····································5
2第二章硬件设计·································6
2.1主控模块电路设计···········································6
2.2管内LED板模块设计…………………………………………7
2.3芯片简介……………………………………………………7
(1)主要特性………………………………………………………7
(2)管脚说明…………………………………………………………7
3.第三章软件设计·····································9
4.第四章调试结果分析··································10
4.1程序的调试…………………………………………………10
4.2硬件的调试…………………………………………………10
5.结束语··········································11
6.参考文献·········································12
7致谢············································13
8附录············································14
引言
随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯
LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚
但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数
这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点
此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果
因此有必要对现有的彩灯控制器进行改进
本文提出了一种基于AT89C51单片机的彩灯控制方案,实现对LED彩灯的控制
本方案以AT89C51单片机作为主控核心,与键盘、显示、驱动等模块组成核心主控制模块
在主控模块上设有8个按键和5位七段码LED显示器,根据用户需要可以编写若干种亮灯模式,利用其内部定时器T0实现一个基本单位时间为5ms的定时中断,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号,然后驱动各种颜色的灯亮或灭
该新型LED彩灯及其控制器是上海某公司委托开发产品,产品实际应用效果较好,亮灯模式多,用户可以根据不同场合和时间来调节亮灯频率和亮灯时间
与普通LED彩灯相比,具有体积小、价格低、低能耗等优点
第1章系统功能
新型LED彩灯分为2部分,即彩灯控制器(主控模块)和管内LED板模块(受控模块)
彩灯控制器可直接与220V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供12V工作电源,另一方面为主控模块单片机系统(彩灯控制器)提供5V工作电源
整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯时间和灯光闪动频率
上电后系统经过初始化,查询是否有功能切换键按下:
有,则进入用户设定模式状态;无,则进入默认缺省工作状态
在用户设定模式状态下,用户可以根据个人爱好及不同场合的需要来指定调用哪些模式,并且可以改变每种模式的时间Ti、频率Fi参数,如果用户想进入缺省状态模式,只需按一下功能切换键即可跳入缺省模式,程序会自动顺序调用亮灯模式;在缺省工作状态下,LED彩灯控制器按照程序设定好的若干亮灯花样模式程序Model_i顺序调用往下走,从第Model_1模式开始工作,自Model_1到Model_2……到Model_n为一个亮灯周期,然后再回到Model_1循环继续工作,同样如果想进入用户设定模式状态,只需按下功能切换键即可
整个n种亮灯模式时间可以看作一个大周期T,其中的每一种花样工作模式Model_i(i=1,2,…,n)时间为小周期Ti,对于每一个模式编写一个独立工作子程序Model_i,其中设定了LED三色灯(红、绿、蓝)的点亮时刻(RED_on,GREEN_on,BLUE_on)和熄灭时刻(RED_off,GREEN_off,BLUE_off),以及模式工作时间Ti以及该模式LED闪烁频率Fi
5位七段码显示器的前2位(L1,L2)显示当前工作模式的序号Model_i;后3位(L3,L4,L5)七段码显示三色LED的工作状态,若该颜色灯点亮则对应七段码显示位为“1”,反之熄灭时则显示位为“灭”即不显示,对系统工作状态起到了很好的实时监控作用
因此在LED彩灯上电工作后,用户可以方便地通过主控模块上的显示器知道LED彩灯当前工作模式Model_i,工作时间Ti,频率Fi等实时参数
若实际应用需要根据不同场合和时间来改变彩灯闪亮效果,用户可以通过主控模块上的按键来设定LED不同的闪烁频率Fi和亮灯时间Ti,以便符合实际需要
此外如果用户对某一种模式感兴趣需要仔细观看该种亮灯模式,可以通过键盘选定任意第Model_i模式使系统循环重复工作在该花样模式下
第2章硬件设计
新型LED彩灯系统包括2大部分,即LED彩灯控制器(89C51主控模块)和LED彩灯管(管内LED板模块)
前者是主控模块,具有按键、显示等功能,并利用89C51的P口输出控制信号;后者是受控模块,上面焊有三色LED彩灯和信号驱动芯片,模块置于LED的透明灯管内
彩灯控制器可直接与220V交流市电相连接,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供12V工作电源,另一方面为主控模块单片机系统(彩灯控制器)提供5V工作电源。
整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯模式。
在此主要是介绍基于单片机的软件仿真,仿真主要在SP0603S52实验板上仿真,电源有电脑主机USB接口提供。
故电源电路省略。
上电后系统经过初始化,查询是否有功能切换键按下:
有,则进入用户设定模式状态;无,则进入默认工作状态(由上到下自动循环)。
在用户设定模式状态下,用户可以根据个人爱好及不同场合的需要来指定调用哪些模式,如果用户想进入初始状态模式,只需按一下复位(RESET)功能切换键即可;
下面说明循环键的功能:
按键K1K2K3K4K5
模式分类模式一停止模式二模式三模式四
循环方式开始/上到下熄灭上到下下到上复位/上到下
并且,程序设置每个彩灯循环时间为0.2S。
第一节主控模块电路设计
主控模块电路如图1所示
主控模块主要设计器件有89C51,5个七段码LED显示器,8个按键,2个稳压器(提供12V,5V电压),1个信号输出驱动模块芯片(MC4049)等
通过软件设计,使单片机P0口作为三色LED驱动信号输出口及移位时钟CLOCK信号,P3口为按键输入口,P2口、P1口与5位七段码LED相接作为显示器的输出口
第二节管内LED板模块设计
管内LED板模块电路见图2
管内LED板模块设计主要器件有LED彩灯(红、绿、蓝)、移位触发模块芯片CD4076等
根据实际应用彩灯长度需要,可将不同数量的该管内LED模块实现级连,组成一个完整的LED彩灯
考虑到功率损耗,LED板模块之间接口处用信号正向驱动模块芯片MC4049连接
每个LED板模块上均匀分布3种颜色LED灯,在实际制作PCB时采用红、绿、蓝3色互隔焊接方式,在电路板上把LED发光管按顺序L1(红)、L2(绿)、L3(蓝)、L4(红)、L5(绿)、L6(蓝)……依次均匀焊在板上成一条直线
为了得到更多的花样模式效果,可以使红绿2种灯从前往后驱动点亮闪烁,蓝灯从后往前驱动点亮闪烁,这样具有很好的动感视觉效果
第三节芯片简介
AT89S51是一个低功耗,高性能CMOS8位单片机,片内含4kBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89S51可为许多嵌入式控制应用系统提供高性价比的解决方案。
1.主要特性:
·兼容MCS-51指令系统·4k可反复擦写(>1000次)ISPFlashROM
·32个双向I/O口·4.5-5.5V工作电压
·2个16位可编程定时/计数器·时钟频率0-33MHz
·全双工UART串行中断口线·128x8bit内部RAM
·2个外部中断源·低功耗空闲和省电模式
·中断唤醒省电模式·3级加密位
·看门狗(WDT)电路·软件设置空闲和省电功能
·灵活的ISP字节和分页编程·双数据寄存器指针
2.管脚说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:
口管脚备选功能
P3.0RXD(串行输入口)
P3.1TXD(串行输出口)
P3.2/INT0(外部中断0)
P3.3/INT1(外部中断1)
P3.4T0(记时器0外部输入)
P3.5T1(记时器1外部输入)
P3.6/WR(外部数据存储器写选通)
P3.7/RD(外部数据存储器读选通)
P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。
在FLASH编程期间,此引脚用于输入编程脉冲。
在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。
因此它可用作对外部输出的脉冲或用于定时目的。
然而要注意的是:
每当用作外部数据存储器时,将跳过一个ALE脉冲。
如想禁止ALE的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
第三章软件设计
新型LED彩灯控制器最大特点在于所有亮灯模式均由软件控制完成
系统中软件可以分为主程序和中断服务子程序
上电后在缺省状态以顺序调用Model_i花样亮灯模式流程为主程序,以一个单位时间5ms的T0定时为中断服务子程序
在这个5ms的T0定时基础上,可以根据需要来确定各种模式工作时间Ti,以及确定在各种亮灯模式Model_i内点亮和熄灭各种颜色LED灯的时刻:
Red_on,Red_off,Green_on,Green_off,Blue_on,blue_off以及Clock(移位翻转脉冲)等
整个系统软件由主程序(Main)、各个模式子程序(Model_i)、5ms中断服务子程序(T0Interrupt)、键盘扫描处理子程序(KeyBoard)、显示子程序(Display)等程序组成
利用T0定时器作为定时基本单位,根据模式需要计算好各控制信号的发生时刻,根据不同的模式Model_i可以设定不同的工作时间Ti和脉冲翻转频率Fi通过P0口输出,使各色LED灯的驱动时刻与移位触发的翻转时刻步调一致,使LED彩灯按照设计的模式工作
除了T0定时中断之外,程序的大部份时间是在处理按键的查询和LED显示的延时
8个按键分别为:
4个参数按键(Fi增、减按键,Ti增、减按键),3个模式改变按键(模式上翻UP、模式下翻DOWN、模式保持KEEP),1个功能切换按键
在每次的T0定时中断服务子程序里,需要对各个时间寄存器和模式寄存器进行加1或者清,为主程序查询作准备,同时查询是否已中断6次(30ms),若30ms到了,则对参数按键查询一次,是否有时间Ti频率Fi增减键按下并进行相应子程序处理
主程序除了调用各种子模式子程序(Model_i),调用LED显示子程序(Display)和延时子程序(Delay)之外,还一直保持查询是否有功能切键按下以及是否有模式改变按键按下,一旦有功能切换键和模式改变键按下,就会进入相应的按键处理
主程序流程如图3所示
亮灯模式子程序Model_i可以编写若干(n种),只要控制好各色灯触发和熄灭时刻就可以组合成各种亮灯效果
第四章调试结果分析
第二节程序的调试
此程序是一个非常简单的循环系统,按下对应的键则要求彩灯执行相应的循环,在调试过程中,多次遇到循环方向搞错的问题,其实仔细的人都会发现只要改变RR或者RL就可以轻松的解决。
还有就是设置赋值的时候要注意硬件的解法,哪一端接P0.0或者反向时应该是P0.7先亮。
由于晶振用的是板上22.118MHZ,故在编写延时程序是应该注意计算等。
第二节硬件的调试
硬件的调试主要是要注意LED的接法,本设计中设置P0.0~P0.7低电平是LED亮,故LED的阴极接P0口。
结语
与市面上大多数的LED彩灯相比,该种彩灯具有更好的灯光装饰效果,性价比更高,与普通的全硬件LED彩灯相比具有更好的经济效益。
由于控制程序存储在89S51单片机的电可擦除Flash闪存EPROM中,如果用户需要更改系统的亮灯模式,无须改变系统硬件电路,只需修改其中程序即可,是一种很有发展前途的彩灯控制器。
心得体会:
单片机课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,通过课程设计我们能够比较系统的了解理论知识,把理论和实践相结合,并且用到生活当中。
在做设计的过程中总会出现各种问题,在这种情况下我们都会努力寻求最佳路径解决问题,无形间提高了我们的动手,动脑能力,并且同学之间还能相互探讨问题,研究解决方案,增进大家的团队意识。
通过课程设计让我知道了如何对单片机程序的下载,流程的规划等等。
感觉到我们平时所学的知识如果不加以实践的话等于纸上谈兵。
课程设计主要是我们理论知识的延伸,它的目的主要是要在设计中发现问题,并且自己要能找到解决问题的方案,形成一种独立的意识。
我们还能从设计中检验我们所学的理论知识到底有多少,巩固我们已经学会的,不断学习我们所遗漏的新知识,把这门课学的扎实。
参考文献
[1]蔡美琴,张为民,沈新群等.MCS51系列单片机系统及其应用[M].北京:
高等教育出版社,1992.
[2]何立民.单片机应用技术选篇(5)[M].北京:
北京航空航天大学出版社,1997.
[3]杨光友.单片机微型计算机原理及接口技术[M].北京:
中国水利水电出版社,2002
[4]周美娟、肖来胜.《单片机技术及系统设计》[M].清华大学出版社.2007.
[5]张瑛.《单片机实验指导书》[EB].2010.
致谢语
从论文的选题到收集材料,从动手写稿到反复修改,其间受到很多人的帮是发自肺腑的的谢意与感想:
助,以下的言语就我要感谢,非常感谢我的指导老师李晓花老师。
她为人随和热情,治学严谨细心,在论文的写作和措辞方面总是会以专业标准严格要求,从选题、定题开始,一直到最后论文的反复修改,李老师始终认真负责地给予我深刻细致的指导,给我留下了深刻的映像。
正是李老师的无私帮助与热忱鼓励,我的毕业论文才能够得以顺利完成,谢谢李老师。
我要感谢,非常感想我的同学。
他们提供了良好的学习氛围,并在需要时伸出援助之手,提供了宝贵的意见供我参考,开阔了我的思路。
通过讨论,使我的论文更加完善,谢谢同学们。
附录
;******************************************************************************
;此实验实现从右到左和从左到右的循环灯现象
;由按键切换彩灯的循环方向
;******************************************************************************
LEDEQUP0;P0口接有8个发光二极管LED
K1BITP1.2;开始开关上到下
K2BITP1.3;停止开关
K3BITP1.4;上到下开关
K4BITP1.5;下到上开关
ORG0000H
LJMPMAIN
ORG0030H
MAIN:
MOVR0,#07H;再装入移位计数初值到R0
FUZHI1:
MOVA,#0FEH
LOOP1:
MOVLED,A;将A的内容送到P0口显示
LCALLDELAY02S;调用延时子程序,延时0.2S
RLA;循环左(下)移一位
;******************************************************************************
JNBK1,FUZHI1;K1=0时,跳转到FUZHI1
JNBK2,NEXT;K2=0时,灯全部熄灭
JNBK3,FUZHI1;K3=0时,跳转到FUZHI1
JNBK4,FUZHI2;K4=0时,跳转到FUZHI2
;****************************************************************************
DJNZR0,LOOP1;R0的内容不为0,则跳到LOOP1
LJMPFUZHI1;R0的内容为0,则跳到FUZHI
MOVR0,#07H;再装入移位计数初值到R0
FUZHI2:
MOVA,#0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 李熙熙
![提示](https://static.bdocx.com/images/bang_tan.gif)