单片机彩灯循环
基于AT89S52单片机的简易循环彩灯设计
基于AT89S52单片机的简易循环彩灯控制设计目录绪论 (4)1项目分析 (2)1.1 需求分析 (2)1.2 功能模块分析 (3)1.2.1 系统模块图 (3)1.2.2 外部时钟电路 (3)1.2.3 复位电路 (3)1.2.4 LED驱动电路 (4)1.2.5 最小系统电路 (4)1.3 方案设计 (5)1.3.1 设计方案比较及选择 (5)1.3.2 可行性分析 (5)1.3.3 难点分析及解决方法 (5)1.4 技术性能指标 (6)1.4.1基本要求: (6)1.4.2 彩灯闪烁花型 (6)2 硬件设计 (6)2.1 总体电路图 (6)2.2 电路的工作原理 (7)2.3 元器件及其参数选择 (7)2.4 PCB板的制作 (9)2.5焊接组装 (9)3 电路调试 (10)3.1 静态调试 (10)3.2 通电调试 (10)3.3 故障分析与排除 (10)4 软件设计 (11)4.1 程序设计 (11)4.2 程序功能模块的划分 (11)4.3 程序框架图 (11)4.4 软件程序: (11)4.4 程序调试 (14)4.5 系统仿真 (14)4.6 设计结果评价 (15)5 结语 (15)参考文献 (17)附录: (18)致谢 (19)基于AT89S52单片机的简易循环彩灯控制设计摘要在当代生活里,人们对生活灯饰品的要求越来越高,这样无疑使得各种彩灯成为了最日常生活中不可缺少的装饰品,它不仅能美化都市环境,渲染生活气氛,还可将其用于各种娱乐场所和电子玩具中。
现以本毕业设计为例进行分析与设计简易的可编程的循环彩灯控制电路很多,其组合的方式和运用的集成块的种类及数目更是多种多样,而且还有专门的可编程[9]循的各种复杂程度的循环彩灯控制电路模块。
市场上及大多数的彩灯都是运用各种数字电路来实现的,但本毕业设计在考虑到制作简易程度及成本的前提下,由于单片机具有集成度高、功耗低、运行可靠性强、体积并不大、价格低廉等优点 , 所以特意地运用了单片机、LED等优点及技术,来实现对各种形式不一的各色彩灯的自动简易控制。
循环彩灯控制系统实验报告
循环彩灯控制系统实验报告一、设计要求1、程序中由3个按钮控制每按下一个按钮都会出现不同的彩灯循环现象二、硬件电路设计1、单片机最小系统(2)发光二极管的电路三、软件设计(一)1、在Keil uVision4.LNK上写好程序后通过STC_ISP_V480.exe.lnk和USB口输入到reg52.h单片机中按下开关蓝色指示灯亮,然后按下P3^7按钮发光二极管从左往右依次点亮;2、①在不复位的情况下按下P3^6时发光二极管可以做往返运动依次点亮②在复位时按下P3^6发光二极管是从右往左依次点亮的;3、①在不复位的情况下按下P3^5时发光二极管可以在从左往右或者从右往左点亮后1,3,5,7与2,4,6,8交替闪烁(在看先点亮P3^6还是P3^5 来实现从左还是从右开始循环)②在复位时按下P3^5发光二极管是作1,3,5,7与2,4,6,8交替闪烁。
(二)说明(“0”“1”“2”“3”“4”“5”“6”“7”按键P3^7 0X7F 0XBF 0XDF 0XEF 0XF7 0XFB 0XFD 0XFE 复位P3^6 0XFE 0XFD 0XFB 0XF7 0XEF 0XDF 0XBF 0X7F 复位P3^5 0X7F/0XFF 0XFF/0XBF0XDF/0XFF0XFF/0XEF0XF7/0XFF0XFF/0XFB0XFD/0XFF0XFF/0XFE复位8421码10=A 11=B 12=C 13=D 14=E 15=F四、系统测试步骤1:新建工程→New Project→选择单片机型号→Atmel→AT89C52取名→保存2:新建文档→New file→取名→保存(—3个按键控制两种LED现象.C)3:点右键→Add file to group→选择(—3个按键控制两种LED现象.C)4:点工程右键→options “output”(√)create hex file5产出hex档→编译按钮(↓)(↓↓)(↓↓↓)STC下载软件1:选择单片机型号“STC89C52RC”2:打开文件→(流水灯.hex)3:选择COM口(裝置管理員)4:点下载按鈕→开启电源按钮→“OK 已加密”附录源程序清单#include <reg52.h>#define uint unsigned int#define uchar unsigned charsbit key1 =P3^7; //第一个按键sbit key2 =P3^6; //第二歌按键sbit key3 =P3^5; //第三个按键uchar A1=0,A2=0,A3=0;void delay(uint z){uint i,j;for(i=0;i<z;i++)for(j=0;j<110;j++);}void O_to_E() //1,3,5,7与2,4,6,8交替闪烁{P0=0Xaa;delay(200);P0=~0Xaa;delay(200);}{if(!key1){delay(10); //延时if(!key1)A1=1;}if(!key2){delay(10); //延时if(!key2)A2=1;}if(!key3){delay(10); //延时if(!key3)A3=1;}}void main(){uchar i;while(1){if(A1){for(i=0;i<8;i++) //从左往右亮,每盏灯亮一次{P0=~(0x7f>>i);delay(100);}}if(A2){for(i=0;i<8;i++) //从右往左亮,每盏灯亮一次{P0=~(0xfe<<i);delay(100);}}if(A3){O_to_E(); //1,3,5,7与2,4,6,8交替闪烁}}}附加图片(因为手机问题从左往右跟从右往左还有左右往返的看不出来所以就拍了2张图片)1、从左往右、从右往左、往返2、//1,3,5,7与2,4,6,8交替闪烁超。
AT89S51单片机循环 彩灯
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯
3.1.4 相关知识
1,什么是数据传送操作与数据传送指令 MCS-51单片机有哪些数据传递指令
查表指令(2条)
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯
3.1.4 相关知识
1,什么是数据传送操作与数据传送指令 MCS-51单片机有哪些数据传递指令
_堆栈操作类指令(2条)
____这类指令的作用是把直接寻址单元的内容传送到堆栈指针SP所指的单元中,以及把SP所指单元的内容送到直接寻址单元中.这类指令只有两条,下述的第一条常称为入栈操作指令,第二条称为出栈操作指令.需要指出的是,单片机开机复位后,(SP)默认为07H,但一般都需要重新赋值,设置新的SP首址.入栈的第一个数据必须存放于SP+1所指存储单元,故实际的堆栈底为SP+1所指的存储单元.
________MOV _A,#data ___;#data→(A) 立即数送到累加器A中
________MOV _A,Rn______;(Rn)→(A) Rn中的内容送到累加器A中
________MOV _A,@Ri ____;((Ri))→(A) Ri内容指向的地址单元中的内容送到累加器A
END
3.1 任务二 P1口外接8只LED发光二极管模拟彩灯
3.1.3 源程序的编辑,编译,下载
打开"伟福"模拟仿真软件进行程序的编辑,编译.
1,正确选择单片机类型8751或8031
2,正确选择编译器-伟福编译器
3,选择模拟仿真功能
基于单片机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 。
学习任务三单片机循环彩灯制作 《单片机应用技术》教学课件
一、单片机中常用的数制及编码
表3-2常用的ASCII中的部分符号说明如下。
NUL 空
FF 换页
CAN 作废
SOH 标题开始 CR 回车 EM 载终
STX 正文结束 SO 移出符 SUB 取代
ETX 本文结束 SI 移入符 ESC 换码
EOT 传输结束 DLE 转义符 FS 文字分割符
ENQ 询问 DC1 设备控制1 GS 组分割符
(2)利用开关作为单片机的输入, 拨动不同的开关,循环彩灯点亮的方式 和花样有所不同。
学习目标
能力要求
(1)能够灵活运用单片机中的传送指令; (2)能够使用WAVE6000软件对汇编程序进行调试、编译等; (3)能够进行ED电路的正确连接及调试; (4)能够进行时钟电路、复位电路的正确连接及调试; (5)能够根据项目要求设计出硬件电路; (6)能够进行本项目单片机系统控制电路的正确连接及调试; (7)能够使用编程器下载程序到单片机中。
8421BCD码是一种最常用的编码。4 位二进制码的权从前到后分别为8、4、 2、1。其特点如下。
(1)由4位二进制数0000~1001分 别表示十进制数0~9。
(2)每4位二进制数进位规则为逢十 进一。
(3)当进行两个BCD码运算时,为 了得到BCD码结果,需要进行十进制
一、单片机中常用的数制及编码
2)ASCII码
ASCII码是由7位二进制 数码构成的字符编码,常用的 ASCII码表共有27=128种组合 状态,用它们表示52个大小 写英文字母、10个十进制数、 7个标点符号、9个运算符号 及50个其他控制符号。
在表示这些符号时,用高3位表示行码, 低4位表示列码。常用的十进制数0~9 的ASCII码为 30H~39H,大写字母A~ Z的ASCII码为 41H~5AH,小写字母 a~z的ASCII码为 61H~7AH。
单片机节日彩灯控制器设计彩灯控制器
单片机节日彩灯控制器设计彩灯控制器一、设计任务与要求(1)PD0:开始,按此键则灯开始流动(由上而下);(2)PD1:停止,按此键则停止流动,所有灯为暗;(3)PD2:上,按此键则灯由上向下流动;(4)PD3:下,按此键则灯由下向上流动。
二、方案设计与论证随着人们生活环境的不断改善和美化,在许多场合可以看到彩色霓虹灯。
LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。
但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、功能单一,这样一旦制作成品只能按照固定的模式闪亮,不能根据不同场合、不同时间段的需要来调节亮灯时间、模式、闪烁频率等动态参数。
这种彩灯控制器结构往往有芯片过多、电路复杂、功率损耗大等缺点。
此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,影响彩灯效果,因此有必要对现有的彩灯控制器进行改进。
本方案主要是通过对基于单片机的多控制、多闪烁方式的LED彩灯循环系统的设计,来达到本设计的要求。
其硬件构成框图如图所示,以单片机为核心控制,由单片机最小系统,时钟电路、复位电路、电源、按键控制电路、LED发光二极管和5V直流电源电路组成。
图2单片机彩灯循环控制系统硬件框图开始键按下?停止键按下?正向键按下?反向键按下?灯全灭停止键按下?正向键按下?此设计方案中单片机的PD 口接4路按键控制电路,实现彩灯花型的切换功 能,单片机上的PB 口接8路LED 发光二极管组成彩灯电路,显示彩灯循环情况。
1、总体流程图设计2、键盘设计论证 方案一、独立式独立式键盘是各按键相互独立,每个按键各接一根输入线,一根输入线上的 按键工作状态不会影响到其他输入线上的工作状态。
因此,通过检测输入线的电 平状态可以很容易判断那个键被按下了。
独立式按键电路配置灵活,软件简单,但每个按键需要占用一根输入口线, 在按键数量较多时,需要较多的输入口线且 电路结构复杂,故此种键盘适用于按键较少或操作速度较高的场合。
基于单片机的LED流水彩灯设计
第1章概述近几年来,彩灯对于美化、亮化城市有着不可轻视的重要工作。
因此作为城市装饰的彩灯需求量越来越大,对与彩灯的技术和花样也越来越高。
但传统的彩灯控制电路一般是由数字电路组成,这种彩灯控制器电路结构复杂、成本较高、功率损耗大,此外从功能效果上看,彩灯模式少而且样式单调,缺乏用户可操作性,影响亮灯效果。
因此有必要对现有的彩灯控制器进行改进。
然而单片机具有体积小、功能强、成本低、应用面广等优点,可以说,智能控制与自动控制的核心就是单片机。
LED彩灯具有成本低、发光纯度高、发光热量小、耗电量低、超长寿命的特点。
所以利用单片机作LED彩灯控制,不仅是使控制花样、路数大大增加,成本也很低,而且对环境能源没有污染,有着很大的发展前景。
本方案是一种基于AT-89C51单片机的彩灯控制方案,实现对LED彩灯的控制。
主要以AT-89C51单片机作为主控核心与发光二极管、晶振、复位、电源等组成电路,利用软件编辑实现彩灯流水灯的效果。
第2章方案设计2.1设计任务(1)共有红、绿、蓝3色彩灯各8个,要求按一定顺序和时间关系运行:红色发光二极管由弱到强—>绿色发光二极管由弱到强—>蓝色发光二极管由弱到强。
(2)利用三基色原理,控制每次点亮红色发光二极管,绿色发光二极管,蓝色发光二极管的数目,实现黄色,紫色,青色。
(3)控制不同颜色发光二极管的数目,实现花样彩灯。
(4)编写程序代码。
(5)程序分析与调试。
2.2工程方案按照设计任务要求,红,绿,蓝光由弱到强,每个颜色用8个发光二极管,在程序控制下,先亮一个,再亮两个,再亮三个,慢慢的直到最后全亮,就能看到由弱到强的现象。
如果同一颜色使用更多的发光二极管,显示效果会更柔和。
要实现黄色,紫色,青色光,只能根据三基色原理进行合成。
所谓三基色是指红,绿,蓝三色,人眼对红,绿,蓝最为敏感,大多数可以通过红,绿,蓝3种颜色按照不同的比例合成产生。
同时,绝大多数单色光也可以分解成红绿蓝三种光。
基于单片机的节日彩灯设计(六种状态)
LED lightsAT-89C52
一、绪论
彩灯是我国普遍流行的传统的民间的综合性的工艺品。彩灯艺术也就是灯的综合性的装饰艺术。新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种LED彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应用。其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。
uchar scan(void)
{
uchar ans;
//if(P1!=0xF0)
//{
//delay(4);
if(!key1)
{
ans=1;
while(!key1);
}
if(!key2)
{
ans=2;
while(!key2);
}
if(!key3)
{
ans=3;
while(!key3);
}
if(!key4)
TH0=(65536-10000)/256;
TL0=(65536-10000)%256;
EA=1;//开总中断
ET0=1;//开定时器0中断
P0=0xFF;
}
/***************************************************/
//按键扫描
/***************************************************/
单片机控制的循环彩灯控制系统的设计
LCALL DISP
MOV DPTR,#TABLE
MOVR5,#11
L7: MOVA,#22
SUBBA,R5
LCALLXX
DJNZR5,L7
RET
LP3:MOV27H,#04H ;花形4
LCALL DISP
MOV DPTR,#TABLE
MOVR6,#09ຫໍສະໝຸດ L8:MOVA,#30SETB ET1 ;开INT1中断
SETB EX1
SETB EA
LOOP:LCALL KEY ;调用按键程序
LJMP LOOP
JIAN:JNB P3.2,$ ;取消按键抖动,等待释放
INC 20H ;延时单元加2
INC 20H
MOV A,20H
CJNE A,#14,YY ;判断延时单元是否等于14
MOV A,#14
单片机控制的循环彩灯控制系统的设计
一、实习目的
《单片机原理与接口技术》课程实习安排在该课程理论教学结束后进行。其目的是通过实习,使学生进一步弄懂所学到的课本知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/计数控制、程序设计、应用开发等基本理论知识的理解,提高单片机应用技术的实践操作技能,掌握单片机应用系统设计、研制方面的一般方法,培养利用单片机进行科技革新、开发和创新的基本能力、为毕业后从事和单片机相关的工作打下一定的基础。
1)基本程序模块
延时程序、设置按键处理程序、主程序初始化及初值设定
2)LED控制程序
3)取消按键抖动程序
4)控制程序
2、设计要求
能输出4种花型,并能由人工进行花型的切换。可以使用按键,也可以使用波动1)开关来实现切换,方法不限。
单片机彩灯实验
实验名称华中科技大学彩灯控制实验指导教师曹丹华专业班级光实1201 姓名学号一、任务要求实验内容:利用C8051F310单片机设计一个彩灯控制器主要功能和技术指标要求:1. 控制LED七段数码管按照特定方式闪烁。
2. 闪烁模式不少于4种。
3. 利用键盘控制彩灯闪烁模式切换。
提高要求:使用按键(KINT)控制LED灯闪烁频率,闪烁频率多级可调。
二、设计思路功能实现:不按键时显示器最开始显示“love”,从左至右,每隔0.2s闪烁一个字母,响完一个周期,响一次蜂鸣器,继续循环。
按下Kint键,频率变慢,连续按频率更慢,变为之前的一半,分为四个档,直到变为最开始的1/8后,继续按变回最开始的频率。
按键K0,K1,K2,K3时,显示屏上的图形变为从右至左的再从左至右的“L”,每个“L”间隔为0.2S,响完一轮响一次蜂鸣器,频率同样可以按KINT键调节。
按键K4,K5,K6,K7时,显示屏上的图形变为从右至左的“O”,每个“O”间隔为0.2S,响完一轮响一次蜂鸣器,频率同样可以按KINT键调节。
按键K8,K9,K10,K11时,显示屏上的图形变为从右至左的“V”,每个“V”间隔为0.2S,响完一轮响一次蜂鸣器,频率同样可以按KINT键调节。
按键K12,K13,K14,K15时,显示屏上的图形变为从右至左的“E”,每个“E”间隔为0.2S,响完一轮响一次蜂鸣器,频率同样可以按KINT键调节。
设计思路:先进行初始化设置,利用Config2软件生成初始代码,关闭看门狗,设置P0,P1,P2端口的输入输出形态,控制P0.6,P0.7与P1,来得到想要的图形,并利用延时控制好视觉效果,最重要的是在延时程序中插入扫描键盘的程序,这样每次显示图形的时候都能扫描一次键盘,能使频率和图形随时根据键盘发生改变,扫描键盘后判断有无按键,无按键继续显示之前的图形,有按键再跳到对应的图形显示程序,反复循环。
扫描键盘时先扫描KINT键,看P0.1是否为低电平,不是则延时不变,是则改变延时程序的循环次数来改变频率。
循环彩灯控制毕业设计
摘要本设计是循环彩灯控制,运用了单片机AT89c51作为核心芯片,英国Labcenter 公司开发的Proteus ISIS电路分析与实物仿真软件仿真,美国Keil Software公司出品的51系列兼容单片机C语言软件Keil C51 uVision2编程调试。
按设定的时间有规律的循环点亮彩灯,先红、绿、黄三组彩灯各九个,每一个分别按按0.5S的速度跑动一次;然后再所有红、黄、绿三组彩灯按5S的速度分别跑动一次,依次循环。
1目录第一章绪论 (1)1.1 选题依据 (1)1.2 系统设计任务要求 (2)1.3 应用价值 (2)第二章系统电路设计 (3)2.1系统设计 (3)2.1.1系统设计框图 (3)2.2 各功能模块作用 (4)2.2.1 AT89c51结构及功能简介 (4)2.2.2 供电电路 (5)2.2.3 复位电路 (6)2.2.4 P0接口驱动电路 (7)2.2.5 晶振电路 (7)2.2.6 电源指示灯电路 (7)2.3 灯的各个状态转换及端口定义 (8)2.4 程序设计与仿真 (8)第三章仿真测试 (15)3.1仿真平台 (15)3.1.1 Keil uVision2编程调试器 (15)3.1.2 Proteus介绍 (15)3.2 仿真结果 (16)第四章制作与调试 (17)4.1 系统总原理图 (17)4.2 元件选择购买 (17)4.3 安装工艺 (18)4.4 装配电路板 (18)4.5 整机调试 (19)4.5.1 硬件调试 (19)4.5.2 软件调试 (19)4.6 实验现象 (20)第五章总结 (21)致谢 ................................................ 错误!未定义书签。
Ⅲ参考文献 (23)附录一元器件清单 (24)附录二循环彩灯源程序 (25)Ⅲ第一章绪论1.1 选题依据自1879年美国科学家爱迪生发明了白炽灯以来,便结束了人类“黑暗“的历史,给人类以光明,创造了巨大的财富。
基于单片机的彩灯循环电路
中北大学课程设计说明书2012/2013学年第1 学期学院:电子与计算机科学技术学院专业:电子科学与技术学生姓名:丰晓宁学号:1006044216课程设计题目:基于单片机的彩灯循环电路起迄日期:2013年1月 2日 --2013年1月15日课程设计地点:电子科学与技术专业实验室指导教师:文丰系主任:刘文怡2013年1月 15日目录一、引言二、课程设计目的三、课程设计内容和要求四、设计工作任务及工作量的要求五、设计成果形式及要求六、设计方案及过程1、设计思路2、用PROTUES绘制原理图以及对其仿真3、用PROTEL对器件生成PCB版图七、课程设计总结八、参考文献一、引言1、单片机单片微型计算机简称单片机,是典型的嵌入式微控制器(Microcontroller Unit),常用英文字母的缩写MCU表示单片机,它相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。
概括的讲:一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
现代人类生活中所用的几乎每件电子和机械产品中都会集成有单片机。
手机、电话、计算器、家用电器、电子玩具、掌上电脑以及鼠标等电脑配件中都配有1-2部单片机。
汽车上一般配备40多部单片机,复杂的工业控制系统上甚至可能有数百台单片机在同时工作!单片机的数量不仅远超过PC机和其他计算的总和,甚至比人类的数量还要多。
单片机的广泛应用是电子技术发展的一个标志,也是电子产品向智能化方向发展的必然趋势。
所以作为一个电子技术从业人员,学好单片机是必备的基础!2、ProtuesProtues软件是英国Labcenter electronics公司出版的EDA工具软件。
它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。
它是目前最好的仿真单片机及外围器件的工具。
Proteus 是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。
比较器和单片机的彩灯循环控制的连接
比较器和单片机的彩灯循环控制的连接
彩灯循环控制的连接一般涉及到以下几个部分:
1. 彩灯:彩灯需要选择合适的电源,一般是使用12V DC电源。
同时,彩灯需要有三根引脚:红色Anode, 绿色Anode, 蓝色Anode。
需要将灯的三个引脚分别与比较器输出的三个引脚相连。
2. 比较器:比较器需要选择合适的型号,一般选择三个比较器,并将输出分别连接到彩灯的三个引脚。
比较器需要提供基准电源,一般使用5V DC电源。
3. 单片机:单片机需要提供大量的控制信号,这些信号通过编程实现。
单片机需要和比较器进行通信,并发送PWM波形控制比较器输出的电平,从而控制彩灯的颜色和亮度。
总的来说,彩灯循环控制的连接需要一个PWM信号发生器来产生PWM波形,这个信号可以来自于单片机内部的定时器,也可以是外部的PWM模块。
在控制时,需要将发生器的PWM信号送至比较器的反馈输入端,比较器会将两路输入进行比较后输出控制信号,从而控制彩灯循环变化。
单片机循环彩灯
课程设计说明书课程名称:《单片机技术与应用》设计题目:多级外部中断控制灯移动院系:电子信息与电气工程学院学生姓名:学号:专业班级:指导教师:范秋凤2012 年5月18 日课程设计任务书多级外部中断控制灯移动摘要:本设计是用AT89S52及其基本外围电路实现单片机控制灯移动。
主要包括:电源电路、复位电路、时钟脉冲电路、两级外部中断电路以及发光二极管显示几个部分。
在写入相应的程序后,能够实现用两个外部中断控制八只灯的闪烁和有规律循环移动,按下复位键后灯恢复闪烁。
该系统能够很方便调整灯的移动,两个外部中断之间有优先级的差别,使灯在移动过程中不会混乱,具有较广泛的实用价值。
关键词:单片机AT89S52 中断汇编程序桥堆晶振目录1.设计背景 (1)1.1.课题依据 (1)1.2.实习背景 (1)2.设计方案 (1)2.1.提出方案 (1)2.2.确定方案 (1)3.方案实施 (1)3.1.硬件原理 (1)3.2.软件程序 (4)3.3做出实物 (6)4.结果与结论 (6)4.1.结果 (6)4.2.结论 (6)5.收获与致谢 (6)5.1.收获 (6)5.2.致谢 (7)6.参考文献 (7)7.附件 (7)7.1.原理图 (7)7.2.程序清单 (8)7.3.元器件清单 (10)1.设计背景1.1课题依据AT89S52单片机的中断系统有5个中断请求源,两个中断优先级,可实现两级中断服务程序嵌套,每个中断源可以用软件独立地控制为允许中断或禁止中断状态,每个中断源的中断优先级别均可由软件来设置。
在单片机系统中,中断技术主要用于实时监测与控制,也就是单片机能及时地响应中断请求源提出的服务请求并作出快速的响应和及时处理,提高了单片机的工作效率和实时性。
1.2实习背景由于单片机具有集成度高、处理功能强、可靠性高、系统结构简单、价格低廉、易于使用,嵌入到工业控制单元、机器人、智能仪器仪表、汽车电子系统、武器系统、家用电器、办公自动化设备、金融电子系统、玩具、个人信息终端及通讯产品中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《单片机原理及应用》课程设计报告题目:彩灯循环系统专业:电子信息工程班级:学号:姓名:指导教师:一.实验目的:《单片机原理与接口技术》课程实习安排在该课程理论教学结束后进行。
其目的是通过实习,使学生进一步弄懂所学到的课本知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/计数控制、程序设计、应用开发等基本理论知识的理解,提高单片机应用技术的实践操作技能,掌握单片机应用系统设计、研制方面的一般方法,培养利用单片机进行科技革新、开发和创新的基本能力、为毕业后从事和单片机相关的工作打下一定的基础。
二.实验内容:通过8051单片机实现彩灯循环三.实验过程:1.引言随着人们对房屋的装饰需要彩灯,在许多城市可以看到彩色霓虹灯。
LED彩灯由于其丰富的灯光色彩,便宜的造价以及控制简单等特点而得到了广泛的应用,用彩灯来装饰街道和城市建筑物已经成为一种时尚。
但目前市场上各式样的LED彩灯控制器大多数用全硬件电路实现,电路结构复杂、电路复杂、功率损耗大等缺点。
此外从功能效果上看,亮灯模式少而且样式单调,缺乏用户可操作性,。
本方案提出了一种基于8051单片机的彩灯控制方案,实现对LED彩灯的控制。
本方案以8051单片机作为主控核心,在主控模块上设有3个按键和8个码LED显示灯,根据需要可以编写若干种亮灯模式,利用其内部定时器T0实现一个基本单位时间为1 ms的定时中断,根据各种亮灯时间的不同需要,在不同时刻输出灯亮或灯灭的控制信号,然后驱动各种颜色的灯亮或灭。
与普通LED 彩灯相比,具有体积小、价格低、低能耗等优点。
2.8051单片机引脚功能介绍首先我们来连接一下单片机的引脚图,如果,具体功能在下面都有介绍。
单片机的40个引脚大致可分为4类:电源、时钟、控制和I/O引脚。
⒈电源: ⑴ VCC - 芯片电源,接+5V;⑵ VSS - 接地端;⒉时钟:XTAL1、XTAL2 - 晶体振荡电路反相输入端和输出端。
⒊控制线:控制线共有4根,⑴ ALE/PROG:地址锁存允许/片内EPROM编程脉冲① ALE功能:用来锁存P0口送出的低8位地址② PROG功能:片内有EPROM的芯片,在EPROM编程期间,此引脚输入编程脉冲。
⑵ PSEN:外ROM读选通信号。
⑶ RST/VPD:复位/备用电源。
① RST(Reset)功能:复位信号输入端。
② VPD功能:在Vcc掉电情况下,接备用电源。
⑷ EA/Vpp:内外ROM选择/片内EPROM编程电源。
① EA功能:内外ROM选择端。
② Vpp功能:片内有EPROM的芯片,在EPROM编程期间,施加编程电源Vpp。
⒋ I/O线80C51共有4个8位并行I/O端口:P0、P1、P2、P3口,共32个引脚。
P3口还具有第二功能,用于特殊信号输入输出和控制信号(属控制总线)。
〈51单片机引脚图及引脚功能〉拿到一块芯片,想要使用它,首先必须要知道怎样连线,我们用的一块称之为89C51的芯片,下面我们就看一下如何给它连线。
1、电源:这当然是必不可少的了。
单片机使用的是5V电源,其中正极接40管脚,负极(地)接20管脚。
2、振蒎电路:单片机是一种时序电路,必须供给脉冲信号才能正常工作,在单片机内部已集成了振荡器,使用晶体振荡器,接18、19脚。
只要买来晶体震荡器,电容,连上就能了,按图1接上即可。
3、复位管脚:按图1中画法连好,至于复位是何含义及为何需要复要复位,在单片机功能中介绍。
4、 EA管脚:EA管脚接到正电源端。
至此,一个单片机就接好,通上电,单片机就开始工作了。
我们的第一个任务是要用单片机点亮一只发光二极管LED,显然,这个LED必须要和单片机的某个管脚相连,不然单片机就没法控制它了,那么和哪个管脚相连呢?单片机上除了刚才用掉的5个管脚,还有35个,我们将这个LED和1脚相连。
(见图1,其中R1是限流电阻)按照这个图的接法,当1脚是高电平时,LED不亮,只有1脚是低电平时,LED 才发亮。
因此要1脚我们要能够控制,也就是说,我们要能够让1管脚按要求变为高或低电平。
即然我们要控制1脚,就得给它起个名字,总不能就叫它一脚吧?叫它什么名字呢?设计51芯片的INTEL公司已经起好了,就叫它P1.0,这是规定,不能由我们来更改。
3系统功能LED彩灯用软件控制硬件的方式来是彩灯闪烁,即彩灯控制器和管内LED 板模块)。
彩灯采用8051提供+5V电压工作,经过开关电源变换,输出直流工作电压,一方面为管内LED模块提供+5V工作电源,另一方面为主控模块单片机系统彩灯控制器提供5 V工作电源。
整个系统工作由软件程序控制运行,根据需要,用户可以在LED彩灯工作时通过主控模块上的按键来设定亮灯时间和灯光闪动频率。
上电后系统经过初始化,查询是否有功能切换键按下:有,则进入设定模式状态;无,则进入默认工作状态。
在设定模式状态下,可以根据个人爱好及不同场合的需要来指定调用哪些模式,并且可以改变每种模式的时间T1、频率F1参数,在工作状态下,LED彩灯控制器按照程序设定好的若干亮灯花样模式程序顺序调用往下走,开始工作,依次8个等亮完为一个亮灯周期,然后再回主循环继续工作,同样如果想进入其它设定模式状态,只需按下功能切换键即可。
整个3种亮灯模式时间可以看作一个大周期T,对于每一个模式编写一个独立工作子程序,其中设定了从左到右点亮LED,在从右到左点亮LED,还有自己定义的LED点亮方式。
因此在LED彩灯上电工作后,可以方便地通过控模块上的显示器知道LED彩灯当前工作模式,工作时间Ti,频率Fi等实时参数。
若实际应用需要根据不同场合和时间来改变彩灯闪亮效果,可以通过主控模块上的按键来设定LED不同的闪烁频率Fi和亮灯时间Ti,以便符合实际需要。
此外如果对某一种模式感兴趣需要仔细观看该种亮灯模式,可以让程序循环硬件设计:LED彩灯系统包括,即LED彩灯控制器(8051主控模块)LED彩灯管在8051外部接一个震荡时钟频率。
用8051的控制模块,具有按键、显示等功能,并利用8051的P0口输出控制信号,利用P0口的8个输出端上面焊有8个LED彩灯,使得彩灯在软件的控制下工作。
主控模块电路设计主控模块电路如图1所示。
主控模块主要设计器件有80C51,8个 LED 显示器,3个开关按键,1个稳压器(5 V电压),1个外部晶振震荡器信号输出驱动,4个电阻。
通过软件设计,使单片机P0口作为三色LED驱动信号输出口及移位时钟CLOCK信号,8051的P0口为LED的输出口。
软件设计:LED彩灯控制器最大特点在于所有亮灯模式均由软件控制完成。
系统中软件可以分为主程序和中断服务子程序。
上电后在按键控制灯的闪烁方式,通过软件来控制循环,以一个单位时间1 ms的T0定时为中断服务子程序。
在这个1 ms的T0定时基础上,可以根据需要来确定各种模式工作时间Ti,以及确定在各种亮灯内点亮和熄灭各种状态LED灯等。
整个系统软件由程序)、各个模式子程序、1 ms中断服务子程序、调用循环程序组成。
利用T0定时器作为定时基本单位,根据模式需要计算好各控制信号的发生时刻,根据移位触发的翻转时刻步调一致,使LED彩灯按照设计的模式工作。
除了T0定时中断之外,程序的大部份时间是在处理按键的查询和LED 显示的延时。
3个按键分别为:K1按键.从左到右点亮LED,K2按键.从右到左点亮LED,K3按键.用户自己定义方式点亮LED。
在每次的T0定时中断服务子程序里,需要对各个时间寄存器和模式寄存器进行加1或者清,为主程序查询作准备,同时查询是否已中断1ms,若1ms到了,则对按键一次,是否有按下并进行相应子程序处理。
主程序除了调用各种子模式子程序,调用LED显示子程序和延时子程序之外,还一直保持查询是否有功能切键按下以及是否有模式改变按键按下,一旦有功能切换键和模式改变键按下,就会进入相应的按键处理。
程序流程如图2所示亮灯模式,只要控制好各色灯触发和熄灭时刻就可以组合成各种亮灯效果。
4.实验结构图仿真:5.实验软件程序:ORG 0000HLJMP STARTORG 0003HLJMP INTOORG 0100HSTART: MOV R2,#08H ;设置循环次数MOV A,#0FEH ;送显示模式字SETB P0.1CLR P0.0CLR P0.7CLR P0.2SETB EASETB IT0SETB EX0HERE: AJMP HEREINTO:MOV P0,A ;点亮二极管RL A ;左移一位,改变显示模式字RETIDELAY: MOV R5,#1DEL3: MOV R3,#0FFH ;延时子程序开始DEL2: MOV R4,#0FFHDEL1: NOPDJNZ R4,DEL1DJNZ R3,DEL2DJNZ R5,DEL3RETEND6.彩灯循环方式的修改:此程序里面涉及了主程序,延迟程序,主程序实现彩灯的循环控制,延迟程序实现彩灯的交替闪烁的时间,通过改变显示模式的显示字就可以实现不同的闪烁方法,比如,可以在下面再加一个RL A 就会隔一个闪了,要是开始两个都亮则可以把上面的MOV A,#0FEH ,改为MOV A,#0FDH ,等等四.实验心得:通过这几天的实训,我对单片机有了更深的体会。
了解和掌握了一些编程思想和对I/O口得使用。
本次做的控制循环彩灯控制系统的设计是以单片机8051为核心,结合相关的元器件(共阴极LED数码显示器、通用I/O接口芯片8155等),再配以相应的软件,达到实现LED二极管的发光功能,也具有改变彩灯的花样、彩灯的暂停、彩灯的加减速功能。
在软件调试的过程中,遇到很多困难,第一次实现了彩灯的花样变化,未能进行加减速的调整,后来经过调试后基本达到要求,但当减速见到一定程度后就不明显了,花形3全亮后左右最边亮灯没有灭,花形2时LED数码显示器上显示的不是“2”字,字码表上明明是“5BH”(共阴极)但是显示的“2”字多了一点。
尽管这次的单片机课程设计还存在一些瑕疵但经过自己的努力制作出了彩灯的循环控制,也让自己对单片机有了更大的兴趣。
通过这次的设计使我认识到我对单片机方面的知识学习得不够透彻,对书本上的很多知识还不能灵活的运用,有很多我们需要掌握的知识在等着我去学习,在以后的学习生活中弥补所缺失的知识。
这次实训使我对于软件的设计运用有了一定的了解,从程序设计到调试,再到装载到硬件电路中运行。
最重要的一点是自己的动手能力的提高。
作为一个高职学生动手能力差是不行的,相比本科理论知识有所欠缺,这样就不利于我们以后到社会中的工作。
提高动手能力,毕业后能够更快的适应工作。