欢迎来到天天文库
浏览记录
ID:23624504
大小:374.00 KB
页数:11页
时间:2018-11-09
《单片机课程设计--彩灯控制器的设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、单片机课程设计报告题目:彩灯控制器的设计专业:电气工程及其自动化班级:电气081学号:3080421034学生姓名:廖诗宇指导老师:王水鱼2010年秋季学期起止时间:2011年1月10日至2011年1月14日平时(10%)任务完成(30%)答辩(30%)课设报告(30%)总评成绩彩灯控制器设计一.系统功能及要求分析1)用8盏LED灯实现至四种以上的彩灯灯光效果。2)通过输入按钮实现彩灯灯光效果的切换。3)通过输入按钮实现暂停彩灯效果。在暂停期间小灯全亮。4)使用定时器实现通过89C51芯片控制LED。使其显示出四种彩灯效果:自动先从上到下再从下到上。自
2、动分为从上到下和从上到下。闪烁,先亮一.三.五.七,再亮二.四.六.八。交替亮.,暂停时,小灯全亮。二.方案设计及其说明以AT-89C51单片机作为主要控制器,与按键.显示器等硬件相结合.利用软件实现对LED彩灯进行控制.该系统特点有极小,硬件少,电路结构简单及容易操作等优点。我们在实验中采用了一种基于AT-89C51单片机的彩灯控制方案。本方案以AT-89C51单片机作为控制核心,与显示.驱动等模块组成主要控制模块,在主控模块上没有五个按键和8位LED显示器,根据用户需要可以编写若干种亮灯模式。利用其内部定时器TD实现一个基本时间的定时中断,根据各种
3、亮灯时间的不同需要,在不同的时刻输出灯亮或者灯灭的控制信号,然后驱动各种颜色的灯亮或者灯灭,整个系统龚做由软件控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯的时间和亮灯闪动的频率。同时通过按键,可以实现工作模式切换的功能。三.原理线路设计1.)原理线路(见打印图)2)工作原理说明通电后,接通开关1,系统经过初始化,会直接自动进入自动模式,即LED彩灯会自动顺序亮灯,而在自动模式下,用户根据自己需要选择其他手动模式,并且可以改变每种模式下的时间和频率的参数,本实验设定的默认延迟200MS,当开关2接通后会进入手动模式,手动模
4、式下,有两种工作模式,当开关3断开断开时,LED灯会按照从上往下的顺序亮灯,最下方的灯亮后又会回到最上方的灯亮,当开关3接通时,LED灯则会按照从下到上的顺序亮灯。当开关4接通时,系统会进入暂停状态,此时所有的灯都会亮.断开开关4,系统又会回到暂停前的状态继续亮灯。当开关5闭合时。系统会竟如闪烁状态,即1,3,5,7和2,4,6,8轮流点亮。因此在LED彩灯上电工作后,用户可以根据实际情况来通过开关选择适合的模式来完成功能。主要控制模块设计器件有89C51-LED显示器,5个开关,通过软件程序设计,使单片机和P0口作为LED驱动信号输出口及移位时钟CL
5、OCK信号,P1口作为按键输入口。3)特点分析在系统开机后默认进入自动工作状态,LED彩灯控制器按照程序设定好的亮灯模式进行,从模块一顺序往下走,一直到最后一个模块为一个亮灯周期,然后再回到模块一循环工作,整个工作周期看作一个大周期,其中每一个花样工作模式时间为200MS,对于没一个工作模式编写一个独立工作的子程序,若灯亮则对应显示位“1“,熄灯则不显示,对系统工作状态起到了很好的监控作业。LED彩灯系统包括2大部分,即LED彩灯控制器(89C51主控模块),主要是用来控制按键功能,LED彩灯管(管内LED板膜块),主要是受控制的模块。一.程序设计1)
6、程序结构及流程图(见打印页)结构:1.当开关1接通时,P1.4由高电平进入低电平时,主程序就跳到自动的子函数执行,这样就实现了闪亮。2.当开关2接通时,P1.5由高电平进入低电平时,主程序自动跳到手动自上到下的子函数。3.当开关3接通时,P1.6由高电平进入低电平时,主程序就跳到手动由下到上的子函数上。4.当开关4接通时,P1.7由高电平进入低电平时,主程序就跳到暂停状态,此时灯全亮。5.当按键5接通时,P1.3由高电平进入低电平时,主程序就跳到闪烁的状态。2)程序算法分析系统中的软件可以分为主程序和中断服务子程序,整个系统软件由主程序,各个模块子程序
7、,终端服务子程序,除了中断会定时进行以外,程序其他的时间都在进行查询和LED显示延时,在每次定时终断服务子程序里,需要对各个时间寄存器和模式进行加减。为主程序查询作准备,同时查询是否已到时间,并进行相应的子程序处理。主程序除了调用各种模式的子程序和延时子程序外。还一直保持查询是否有功能键按下。3)关键程序段说明ORG00HSTART:MOVA,#0FFHCLRCMOVR1,#8SB1:MOVP0,#OOFHJBP1.4,SB1JNBP1.3,FLASHSB2:JBP1.5,AUTOJBP1.6.LEFTJMPRIGHT该模块是主控模块。主要用来调用模
8、块的处理数据,根据各功能模块对应的程序决定。1)源程序(见附页)五.调试结果及分析首先通过仿真
此文档下载收益归作者所有