单片机控制的花样彩灯设计
基于单片机控制的节日彩灯控制课程设计

课程设计题目基于51单片机的节日彩灯设计学院物流工程学院专业物流工程班级姓名同组者指导教师月日附件2:课程设计任务书学生姓名:专业班级:指导教师:工作单位:物流工程 __题目: 单片机节日彩灯控制器初始条件:1.Protues 7 professional的ISIS 7 professional和ARES 7 professional软件2.Keil uvision4软件3.单片机的相关资料指导书要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)设计一个节日彩灯控制器,实现不同的闪烁方式,要求:(1)P3.3: 开始,按此键则灯开始流动(由上而下);(2)P3.2: 停止,按此键则停止流动,所有灯为暗;(3)P3.1: 上,按此键则灯由上向下流动;(4)P3.0: 下,按此键则灯由下向上流动。
时间安排:十八周到十九周设计,十九周答辩指导教师签名:年月日系主任(或责任教师)签名:年月日附件3:武汉理工大学课程设计教学检查记录表课程设计名称设计周数检查日期课程设计指导教师进行方式:集中□分散□.地点检查人附件6:本科生课程设计成绩评定表指导教师签字:年月日摘要 (1)1 设计任务 (2)2 总体方案设计与论证 (3)2.1 方案比较 (3)2.2 方案论证 (4)2.3 方案选择 (4)3 系统硬件设计 (5)3.2 单片机最小系统设计 (5)3.3 LED彩灯显示电路设计 (6)3.4 按键控制电路设计 (6)4 系统的软件设计 (8)4.1 按键扫描子程序设计 (8)4.2 主程序设计 (8)参考文献 (11)彩灯是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。
而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。
单片机课程设计简易节日彩灯

单片机课程设计——节日彩灯一、需求分析:1.应用场合应用于各种场合,如学校,企事业单位,家庭等可以应用于节日彩灯的控制、广告灯控制等场所。
2.设计目的1)了解单片机的基本原理以及基本应用;2)提高动手制作单片机开发板的能力;3)掌握基本I/O口的输入输出方法;4)掌握中断的处理方法以及编程方法;5)掌握焊接单片机开发板所需要的最基本的最小系统电路。
3.立题意义通过这个实验,能够对同学们的动手能力有所提高和培养,提高同学对单片机的基本原理的理解,学会一些单片机的简单应用。
二、硬件设计方案在设计中用到单片机最小系统:复位电路以及时钟(晶振)电路、程序烧写电路以及各种颜色的彩灯。
复位电路:复位是单片机的初始化操作,目的是使CPU以及各个寄存器处于一个确定的初始状态。
分为手动复位方式和上电自动方式。
时钟电路:51单片机的时钟信号可由芯片内部的震荡电路产生,也可以由外部产生。
程序烧写电路:在使用串口进行烧写电路时,用到MAX232芯片以及几个104瓷片电容。
用STC软件进行程序烧写。
三、软件设计方案首先单片机执行四种方案的程序等待中断。
中断中判断是第几次执行相应的程序。
程序流程图如图所示:图1-1 程序流程图四、系统调试问题一:在焊接电路过程中,电源正负极电压为2V解决方法:在焊接中将电源指示灯直接连接在正负极上,没有加限流电阻导致,经修改后电路正常。
问题二:在系统软件调试中,中断执行时不能返回程序解决方法:在中断中灯的延时指令for(i=0;i<200;i++) for(j=0;j<200;j++);修改为for(i=0;i<149;i++)for(j=0;j<149;j++);后,单片机正常执行指令。
五、总结通过本次课程设计,加强了我的动手操作能力,将课堂上所学的知识应用到实践中来,并且了解了单片机的基本工作原理和使用方法,在实践过程中练习了IO口的输入输出方式,熟练的掌握了中断的处理及其编程方法,掌握焊接单片机开发板所需要的最基本的最小系统电路。
51单片机彩灯控制器的设计

51单片机彩灯控制器的设计一、设计目的单片机彩灯控制器是一种能够通过控制程序实现RGBLED灯光颜色和亮度变化的设备。
其设计目的是实现LED的多彩灯光效果,丰富室内环境,提高生活品质。
二、硬件设计1.单片机选择在设计彩灯控制器时,我们选择了常用的8051单片机作为控制芯片。
8051单片机拥有丰富的外设资源,易于编程控制,并且具有较高的稳定性和可靠性。
2.RGBLEDRGBLED是一种由红、绿和蓝三个LED灯组成的组合灯,可以通过控制不同颜色的LED来实现丰富多彩的灯光效果。
在设计中,我们选用了高亮度的RGBLED,以确保灯光效果的良好。
3.驱动电路为了驱动RGBLED,我们设计了一套驱动电路,其中包括三个恒流驱动电路和三个PWM调光电路。
恒流驱动电路可以确保LED的电流稳定,而PWM调光电路可以实现LED的亮度调节。
4.控制电路控制电路主要由单片机、按键、显示屏等组成。
通过单片机控制按键输入,并根据用户需求调整LED的颜色和亮度。
同时,显示屏可以实时显示LED的参数信息,方便用户操作。
5.电源彩灯控制器的电源一般采用直流5V供电,可以通过USB接口或者外部电源适配器来供电,以满足不同环境下的使用需求。
三、软件设计1.系统架构我们将彩灯控制器的软件设计分为三个模块:按键输入模块、LED控制模块和显示模块。
按键输入模块负责接收用户的按键输入,LED控制模块根据用户输入控制LED的颜色和亮度,显示模块实时显示LED的参数信息。
2.按键输入模块按键输入模块主要负责检测用户按键的状态,并根据按键的状态进行相应的处理。
例如,当用户按下“颜色+/颜色-”按键时,按键输入模块会向LED控制模块发送指令,控制LED颜色的变化。
3.LED控制模块LED控制模块负责控制RGBLED的颜色和亮度。
当接收到按键输入模块发送的指令时,LED控制模块会根据指令调节LED的PWM值,实现LED 颜色的变化和亮度的调节。
4.显示模块显示模块通过显示屏实时显示LED的参数信息,包括LED的颜色、亮度等参数。
基于单片机的多样彩灯设计毕业设计论文

毕业设计(论文)题目:基于单片机的多样彩灯设计毕业论文(设计)原创性声明本人所呈交的毕业论文(设计)是我在导师的指导下进行的研究工作及取得的研究成果。
据我所知,除文中已经注明引用的内容外,本论文(设计)不包含其他个人已经发表或撰写过的研究成果。
对本论文(设计)的研究做出重要贡献的个人和集体,均已在文中作了明确说明并表示谢意。
作者签名:日期:毕业论文(设计)授权使用说明本论文(设计)作者完全了解**学院有关保留、使用毕业论文(设计)的规定,学校有权保留论文(设计)并向相关部门送交论文(设计)的电子版和纸质版。
有权将论文(设计)用于非赢利目的的少量复制并允许论文(设计)进入学校图书馆被查阅。
学校可以公布论文(设计)的全部或部分内容。
保密的论文(设计)在解密后适用本规定。
作者签名:指导教师签名:日期:日期:注意事项1.设计(论文)的内容包括:1)封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2.论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。
3.附件包括:任务书、开题报告、外文译文、译文原文(复印件)。
4.文字、图表要求:1)文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。
图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档5.装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装订3)其它摘要单片机是把主要计算机功能部件都集成在一块芯片上的微型计算机。
基于单片机的彩灯控制器的设计(24个LED灯)

任务书以单片机为核心,设计一个节日彩灯控制器控制24个LED灯:P1.2—开始,按此键则灯开始流动(由上而下)。
P1.3—停止,按此键则停止流动,所有灯为暗。
P1.4—上,按此键则灯由上向下流动。
P1.5—下,按此键则灯由下向上流动。
目录1.引言2.工艺过程3.系统控制要求4.方案论证5.系统电路设计6.系统软件设计7.系统程序设计8.连接调试9.心得10.致谢11.参考文献附录1.引言随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。
特别是每当节日的到来,节日彩灯更是到处都看的到。
节日彩灯已成为生活中不可缺少的装饰物。
它集中地运用了单片机、LED、,自动控制等技术,是典型的基于单片机的电子产品。
本文以AT89C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,实现彩灯在开启时满足不一样的闪亮方法。
按键可以在彩灯使用的时候选择不同的亮法,使彩灯变化多样,键一可以使彩灯依次循环点亮,健二可以使彩灯从左到又从右到左循环点亮,三号键使两端灭,中间亮,再对半交替亮,然后再奇偶亮。
通过按键能方便使用者选择不同样的亮法。
节日彩灯使生活中常常用到的装饰物品,是我国普遍流行的传统的民间的综合性的工艺品。
彩灯艺术也就是灯的综合性的装饰艺术。
在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
彩灯控制器主要是通过电路产生有规律变化的脉冲信号来实现彩灯的各种变化,它集中地运用了单片机、LED、,自动控制等技术,是典型的基于单片机的电子产品。
本文以AT89C51单片机为控制核心,采用模块化的设计方案,运用LED彩灯、按键等组成电路,实现彩灯在开启时满足不一样的闪亮方法。
按P1.2键使灯开始流动;按P1.3键则停止流动;按P1.4键则灯由上向下流动;按P1.5键则灯由下向上流动。
基于单片机c语言花样彩灯设计

/*-------------2011.3.19 xxx编写------------------------------------------------------------设计名称:花样和速度可控的花样彩灯设计功能:1.本程序用了两个按键,其中一个可以循环控制花样,另一个循环控制流水速度;2.有断电保存当前花样和速度功能,即断电后,在重现上电时,执行的花样和速度仍旧是断电前的速度和花样。
缺点:1、本程序为延时计时,精度不高;2、由于使用延时来得到秒信号,时数和分数被改变后,有时要过一秒后才能被更新显示------------------------------------------------------------------------------------------------*/#include<reg52.h>#include<zi.c>#include<24c02.c>sbit s1=P1^4; //定义按键sbit s2=P1^5;void zhongduan(void)interrupt 1{//P1=0xff;TR0=0; //关闭定时器T0if(s1==0) //如果按键s1被按下{delay_ms(10); //延时消抖di();{if(s1==0) //如果按键s1按下{k++;write_add_24c02(0,k);if(k==6){k=1;}}while(!s1);flag=1;} //等待s1键抬起并改变标志位TR0=1; //启动定时器T0}if(s2==0) //如果按键s2被按下{delay_ms(10); //延时消抖di();if(s2==0){i++;write_add_24c02(1,i);if(i==6)i=1;}while(!s2);flag=1;} //等待s2键抬起并改变标志位TR0=1; //启动定时器T0}void main(void){TMOD=0X02; // 定时器TO,工作方式2,带自动装在的8位计数器,最大数值2^8=256TH0=256-200; //装载初值TL0=256-200;ET0=1; // 定时器T0中断允许TR0=1; //开启定时器T0EA=1; //打开外部中断0k=read_add_24c02(0);i=read_add_24c02(1);if(k>=6)k=1;if(i>=6)i=1;while(1){flag=0; //按键按下标志位while(flag==0) //检测到有按键按下{ switch(k){case 1:huayang_1();break;case 2:huayang_2();break;case 3:huayang_3();break;case 4:huayang_4();break;case 5:huayang_5();break;}switch(i){case 1:x=10;break;case 2:x=100;break;case 3:x=500;break;case 4:x=1000;break;case 5:x=2000;break;}}}}/****************************************花样子文件zi.c*************************************************/ /*sbit S1=P1^3; 定义按键s1为引脚P1.3sbit S2=P1^4;sbit S3=P1^5;sbit S4=P1^6;sbit S5=P1^7;*/#define led P3sbit beep=P2^0; //定义蜂鸣器为引脚P2.0unsigned int x=10;unsigned char k=1,i=1,flag=0;//#define led ledvoid delay_ms(unsigned int xms) //1ms延时子程序{ unsigned int aa,bb;for(aa=xms;aa>0;aa--){if(flag==1) //当检测到有按键按下,跳出内层循环break;for(bb=800;bb>0;bb--);} //调整bb数值,以使本句运行时间为1ms 。
单片机控制的花样彩灯设计

课程设计报告书题目: 花样彩灯控制系统专业:电气工程学号: 0401100102学生姓名:杜世会指导教师:赵阳日期:2012-6-22河南工业职业技术学院课程设计(论文)任务书一、课题设计(论文)题目:花样彩灯控制系统二、课程设计(论文)使用的原始资料(数据)及设计技术要求:设计要求:利用8031单片机,正常情形下使P1口八个发光二极管做跑马灯和流水灯显示;紧急情形下,使八个发光二极管做鸳鸯戏水灯显示。
三、设计任务:1.设计硬件电路,画出电路原理图;2.画出程序流程图;3.编制程序,写出源程序代码;4.写出5000字的详细说明书,要求字迹工整,原理叙述正确,会计算主要元器件的一些参数,并选择元器件;1四、主要参考资料:1、《单片机原理及应用》,李建忠,西安电子科技大学出版社,2002年2、《单片微型计算机与接口技术》,李群芳等,电子工业出版社,2002年3、《单片微型计算机原理与接口技术》,陈光东等,华中科技大学出版社,1999年4、《单片机实验与实践》,周立功等,北京航空航天大学出版社,2004年5、《开放式综合实验/仿真系统MCS51实验分册》,伟福公司电气工程系电气自动化专业 1001 班学生:杜世会指导教师:赵阳助理指导教师(并指出所负责的部分):教研室:教研室主任:2目录1引言 (4)2 设计原理 (5)2.1MCS51 (5)2.2 LED (6)2.3中断指令 (8)2.4硬件接原理图 (9)3程序流程图 (11)3.1主流程图 (11)3.2流水灯子流程图 (12)3.3中断程序流程图 (13)4汇编程序 (14)4.1主程序 (14)4.2一秒钟定时程序 (17)5小结 (18)参考文献 (19)31.1引言随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰已经成为一种时尚。
基于单片机的彩灯控制器设计

基于单片机的彩灯控制器设计一、引言彩灯是一种可以调节颜色和亮度的灯光装置,被广泛应用于舞台灯光效果、建筑物装饰、商业广告、节日庆典等场合。
传统的彩灯控制器往往依赖于传感器和模拟电路实现,无法快速调节灯光效果,操作不方便。
为了实现更加灵活、方便的彩灯控制,本文将设计一款基于单片机的彩灯控制器。
二、系统设计本彩灯控制器系统设计基于单片机,通过单片机控制器实现对灯光的调节和控制。
系统硬件主要由单片机、彩灯模块、按键开关、显示模块和电源构成,软件主要由单片机程序编写实现。
1.单片机选择单片机是整个系统的核心控制器,选择合适的单片机至关重要。
根据给定的设计要求,选取具有较强处理能力和丰富外设接口的单片机。
一般来说,常用的51系列单片机和STM32系列单片机具备较好的性能和扩展能力。
2.彩灯模块设计彩灯模块是实现灯光调节的核心部分,可以使用RGBLED灯珠或者是WS2812灯带等灯光模块。
通过控制彩灯模块的亮度和色彩来实现不同的灯光效果。
3.按键开关设计通过按键开关来切换不同的灯光模式,实现系统的开关和功能选择。
可以设计多个按键开关,分别对应不同的灯光模式,通过按下不同的按键实现灯光模式的切换。
4.显示模块设计为了方便用户了解灯光的当前状态和模式选择,可以使用OLED显示模块或者数码管显示模块来实现数据的显示。
5.电源设计由于彩灯模块通常需要较高的驱动电流,所以需要提供稳定的电源。
可以采用电池供电或者是AC-DC转换器等方式,确保系统稳定运行。
三、系统实现1.程序设计通过单片机编程实现对彩灯的控制和灯光模式的切换。
根据不同的按键输入,设置对应的灯光参数和模式,通过单片机的I/O接口控制彩灯模块的亮度和色彩。
2.硬件连接按照设计要求,将单片机、彩灯模块、按键开关、显示模块和电源连接起来。
通过对应的引脚和接口进行连接,确保系统正常运行。
四、总结本文设计了一款基于单片机的彩灯控制器,通过单片机编程实现对彩灯的控制和灯光模式的切换。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告书题目: 花样彩灯控制系统专业:电气工程学号: 0401100102学生姓名:杜世会指导教师:赵阳日期:2012-6-22河南工业职业技术学院课程设计(论文)任务书电气工程系电气自动化 1001 学生:杜世会指导教师:赵阳助理指导教师(并指出所负责的部分):教研室:教研室主任:目录1引言 (4)2 设计原理 (5)2.1MCS51 (5)2.2 LED (6)2.3中断指令 (8)2.4硬件接原理图 (9)3程序流程图 (11)3.1主流程图 (11)3.2流水灯子流程图 (12)3.3中断程序流程图 (13)4汇编程序 (14)4.1主程序 (14)4.2一秒钟定时程序 (17)5小结 (18)参考文献 (19)1.1引言随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰已经成为一种时尚。
但目前市场上各式样的 LED 彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。
这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。
此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。
因此有必要对现有的彩灯控制器进行改进。
课程设计是学完一门课后应用本课知识及以前的知识积累而进行的综合性、开放性的训练,是培养学生工程意识和创新能力的重要环节。
进一步巩固和加深“单片机”课程的基本知识,了解单片机设计知识在实际中的应用。
综合运用“单片机”课程和先修课程的理论及生产实际知识去分析和解决电路设计问题,进行单片机电路设计的训练。
学习单片机设计电路的一般方法,了解和掌握单片机电路的设计过程和进行方式,培养正确的设计思想和分析问题、解决问题的能力,特别是总体电路设计能力。
通过计算和绘图,学会运用标准、规范和查阅有关技术资料等,培养单片机电路设计的基本技能。
该程序示例了单片机键盘控制p1口流水灯花样的方法;具体表现为:p3.2 3.2 3.4 3.5四个小本文提出了一种基于AT89S51单片机的彩灯控制方案,实现对LED 彩灯的控制。
按键,分别实现了四个控制。
通过这次实验,我们也了解了团队合作的重要性,集体的力量是伟大的,一个人如何融入一个团队是是一个重要问题,讲究合作才能取得最后的成功!2设计原理2.1 MCS51单片机引脚说明MCS 单片机都采用40引脚的双列直插封装方式。
图2-9为引脚排列图, 40条引脚说明如下:1、主电源引脚Vss 和Vcc ① Vss 接地② Vcc 正常操作时为+5伏电源 2、外接晶振引脚XTAL1和XTAL2 ① XTAL1内部振荡电路反相放大器的输入端,是外接晶体的一个引脚。
当采用外部振荡器时,此引脚接地。
② XTAL2内部振荡电路反相放大器的输出端。
是外接晶体的另一端。
当采用外部振荡器时,此引脚接外部振荡源。
3、控制或与其它电源复用引脚ALE/PROG,PSEN 和RST/VPD ,P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78RST/VPD 9RXD P3.010TXD P3.111INT0 P3.212INT1 P3.313T0 P3.414T1 P3.515WR P3.616RD P3.717XTAL218XTAL119VSS 20P2.021P2.122P2.223P2.324P2.425P2.526P2.627P2.728PSEN 29ALE/PROG30EA/VPP 31P0.732P0.633P0.534P0.435P0.336P0.237P0.138P0.039VCC 408031 8051 8751EA /Vpp① RST/VPD 当振荡器运行时,在此引脚上出现两个机器周期的高电平(由低到高跳变),将使单片机复位在Vcc 掉电期间,此引脚可接 图2-9 8051引脚排列图 上备用电源,由VPD 向内部提供备用电源,以保持内部RAM 中的数据。
② ALE/PROG 正常操作时为ALE 功能(允许地址锁存)提供把地址的低字节锁存到外部锁存器,ALE 引脚以不变的频率(振荡器频率的61)周期性地发出正脉冲信号。
因此,它可用作对外输出的时钟,或用于定时目的。
但要注意,每当访问外部数据存储器时,将跳过一个ALE 脉冲,ALE 端可以驱动(吸收或输出电流)八个LSTTL 电路。
对于EPROM 型单片机,在EPROM 编程期间,此引脚接收编程脉冲(PROG 功能)③ PSEN 外部程序存储器读选通信号输出端,在从外部程序存储取指令(或数据)期间,PSEN 在每个机器周期内两次有效。
PSEN 同样可以驱动八LSTTL 输入。
④ EA /Vpp 、 EA /Vpp 为内部程序存储器和外部程序存储器选择端。
当EA /Vpp 为高电平时,访问内部程序存储器,当EA /Vpp 为低电平时,则访问外部程序存储器。
对于EPROM 型单片机,在EPROM 编程期间,此引脚上加21伏EPROM 编程电源(Vpp )。
4、输入/输出引脚P0.0 - P0.7,P1.0 - P1.7,P2.0 - P2.7,P3.0 - P3.7。
① P0口(P0.0 - P0.7)是一个8位漏极开路型双向I/O 口,在访问外部存储器时,它是分时传送的低字节地址和数据总线,P0口能以吸收电流的方式驱动八个LSTTL 负载。
② P1口(P1.0 - P1.7)是一个带有内部提升电阻的8位准双向I/O 口。
能驱动(吸收或输出电流)四个LSTTL 负载。
③ P2口(P2.0 - P2.7)是一个带有内部提升电阻的8位准双向I/O 口,在访问外部存储器时,它输出高8位地址。
P2口可以驱动(吸收或输出电流)四个LSTTL 负载。
④ P3口(P3.0 - P3.7)是一个带有内部提升电阻的8位准双向I/O 口。
能驱动(吸收或输出电流)四个LSTTL 负载2.2 LED 显示数码管LED 有共阴极和共阳极两种。
如图所示。
二极管的阴极连接在一起,通常此公共阴极接地,而共阳极则将发光二极管的阳极连接在一起,接入+5V 的电压。
一位显示器由8个发光二极管组成,其中7个发光二极管构成字型“8”的各个笔划(段)a ~g ,另一个小数点为dp 发光二极管。
当在某段发光二极管施加一定的正向电压时,该段笔划即亮;不加电压则暗。
为了保护各段LED 不被损坏,需外加限流电阻。
LED 数码管结构原理图:图3 AT89C2051引脚配置AT89C2051芯片的20个引脚功能为: VCC 电源电压。
GND 接地。
RST 复位输入。
当RST 变为高电平并保持2个机器周期时,所有I/O 引脚复位至“1”。
XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2 来自反向振荡放大器的输出。
P1口 8位双向I/O 口。
引脚P1.2~P1.7提供内部上拉,当作为输入并被外部下拉为低电平时,它们将输出电流,这是因内部上拉的缘故。
P1.0和P1.1需要外部上拉,可用作片内精确模拟比较器的正向输入(AIN0)和反向输入(AIN1),P1口输出缓冲器能接收20mA 电流,并能直接驱动LED 显示器;P1口引脚写入“1” 后,可用作输入。
在闪速编程与编程校验期间,P1口也可接收编码数据。
P3口 引脚P3.0~P3.5与P3.7为7个带内部上拉的双向I/0引脚。
P3.6在内部已与片内比较器输出相连,不能作为通用I/O 引脚访问。
P3口的输出缓冲器能接收20mA 的灌电流;P3口写入“1”后,内部上拉,可用输入。
P3口也可用作特殊功能口。
2.3中断指令。
在CPU 和外设交换信息时,存在着快速CPU 和慢速外设间的矛盾,机器内部有时也可能出现突发事件,为此,计算机中通常采用中断技术。
高电平驱动 共阴极低电平驱动 共阳极CPU和外设并行工作,当外设数据准备好( 或有某种突发事件发生)时向CPU 提出请求,CPU暂停正在执行的程序转而为该外设服务(或处理紧急事件),处理完毕再回到原断点继续执行原程序。
中断优先级:当有多个中断源同时向CPU申请中断时,CPU优先响应最需紧急处理的中断请求,处理完毕再响应优先级别较低的,这种预先安排的响应次序。
中断的嵌套:在中断系统中,高优先级的中断请求能中断正在进行的较低级的中断源处理,(1)中断技术是实时控制中的常用技术,51系列单片机有三个内部中断,二个外部中断。
所谓外部中断就是在外部引脚上有产生中断所需要的信号。
每个中断源有固定的中断服务程序的入口地址(称矢量地址或向量地址)。
当CPU响应中断以后单片机内部硬件保证它能自动的跳转到该地址。
因此,此地址是应该熟记的,在汇编程序中,中断服务程序应存放在正确的向量地址内。
(或存放一条转移指令);而在C语言中是靠Interrupt n的关键字n自动设置的。
(2)单片机的中断是靠内部的寄存器管理的,这就是中断允许寄存器IE,中断优先权寄存器IP ,必须在CPU开中断即开全局中断开关EA,开各中断源的中断开关,CPU才能响应该中断源的中断请求,其中缺一不可。
(3)从程序表面看来,主程序和中断服务程序好象是没有关连的,只有掌握中断响应的过程,才能理解中断的发生和返回,看得懂中断程序,并能编写高质量中断程序。
表2.1 常用中断2.4 硬件原理图晶振(12MHz)定时1秒对于12MHz的晶振而言,其时钟周期T=1/f=1/12us,而89C51的一个机器周期包括12个时钟周期,所以一个机器周期为1us,对于T0而言,使之工作于16-bit,最大计时为65536*1=65536us,需要多次定时才能实现一秒定时。
3 程序流程图3.1总流程图3.23.3中断程序流程图4 汇编程序4.1主程序:ORG 0000H ;中断入口程序; LJMP STARTORG 0003HRETIORG 000BHRETIORG 0013HRETIORG 001BHRETICLEAR: RET; ; 初始化程序;START:ACALL CLEAR ; 主程序STAR1:MOV P3,#0FFHJNB P3.2,FUN2JNB P3.3,FUN3 ;关闭按纽JNB P3.4,FUN0JNB P3.5,FUN1JNB F0,STAR1 ;曾经有键按下F0置1 RET;FUN0:LCALL DL10MS ;消除抖动JB P3.4,STAR1WAITL0:JNB P3.4,WAITL0 ;等待键释放SETB F0FUN01:LCALL FUN00LCALL STAR1LJMP FUN01;FUN1:LCALL DL10MS ;消除抖动JB P3.5,STAR1WAITL1:JNB P3.5,WAITL1 ;等待键释放SETB F0FUN10:LCALL FUN11LCALL STAR1LJMP FUN10;FUN2:LCALL DL10MS ;消除抖动JB P3.2,STAR1WAITL2:JNB P3.2,WAITL2 ;等待键释放SETB F0FUN20:LCALL FUN22LCALL STAR1LJMP FUN20;FUN3:LCALL DL10MS ;消除抖动JB P3.3,STAR1WAITL3:JNB P3.3,WAITL3 ;等待键释放MOV P1,#0FFH ;关显示LJMP STAR1;FUN00:MOV A,#0FEH ;从P1.0到P1.7移动点亮FUN000:MOV P0,ALCALL DL05SJNB ACC.7,OUTRL AAJMP FUN000OUT: RET;FUN11:MOV A,#0FEH ;从P1.0到P1.7依次点亮FUN111:MOV P1,ALCALL DL05SJZ OUTRL AANL A,P1AJMP FUN111;FUN22:MOV A,#0FEH ;间隔点亮FUN222:MOV P1,ALCALL DL01SCPL ARL AMOV P1,ALCALL DL01SRET;FUN33: MOV A,#01H ;逐点熄灭FUN333: MOV P1,ALCALL DL01SJNZ OUTRL AAJMP FUN333DL01S:MOV R2,#0FFH ; 延时程序MOV R7,#02HLOOP1: DJNZ R2,LOOP1LOOP5:DJNZ R7,DL512RETDL10MS:MOV R3,#14HLOOP2: LCALL DL512DJNZ R3,LOOP2RETDL05S:MOV R4,#0AHLOOP3: LCALL DL10MSDJNZ R4,LOOP3RETDL30S:MOV R5,#03HLOOP4:LCALL DL05SDJNZ R5,LOOP4RETEND4.2一秒钟定时程序MOV B,#0AH ;允许中断MOV TMOD,#01H ;工作方式1 MOV TH0,#0B0HMOV TL0,#3CHSETB TR0 ;启动计数SETB EA ;开中断BU:JBC TF0,SHISJMP BUSHI:MOV TH0,#3CHMOV TL0,#0B0HRET小结经过努力,我们组终于完成这次数字彩灯的课程设计任务。