多个按键控制花样霓虹灯控制程序
- 格式:docx
- 大小:13.98 KB
- 文档页数:1
按键控制多彩霓虹灯控制实验结论一、实验目的本实验旨在通过按键控制多彩霓虹灯的亮灭和颜色变化,加深对单片机控制的理解和应用。
二、实验器材1. 单片机:STC89C522. 多彩霓虹灯模块3. 按键模块4. 面包板、杜邦线等三、实验原理1. 单片机控制多彩霓虹灯模块单片机通过控制IO口输出高低电平来控制多彩霓虹灯模块的亮灭和颜色变化。
多彩霓虹灯模块中有三个LED,分别是红、绿、蓝三种颜色,通过改变不同颜色LED的亮度比例可以实现不同颜色效果。
2. 按键输入控制按键输入可以通过读取IO口电平状态来判断是否有按键按下。
当按键被按下时,对应IO口会输出低电平信号,单片机可以通过读取该信号来判断是否有按键按下,并执行相应操作。
四、实验步骤1. 将多彩霓虹灯模块连接到单片机的IO口上,分别将红、绿、蓝三个LED连接到P2.0、P2.1、P2.2口,将共阳极连接到VCC,将三个限流电阻连接到GND。
2. 将按键模块连接到单片机的IO口上,将按键引脚连接到P1.0口,将上拉电阻连接到VCC。
3. 编写程序,通过读取按键输入状态来控制多彩霓虹灯的亮灭和颜色变化。
程序主要分为以下几个部分:(1)初始化:设置IO口方向和初始状态。
(2)读取按键输入状态:通过读取P1.0口电平状态来判断是否有按键按下。
(3)控制多彩霓虹灯:根据不同的按键输入状态来控制多彩霓虹灯的亮灭和颜色变化。
4. 将程序下载到单片机中,并接上电源进行实验。
五、实验结果本实验成功实现了通过按键输入控制多彩霓虹灯的亮灭和颜色变化。
具体效果如下:(1)当没有任何按键被按下时,三个LED都处于关闭状态。
(2)当只有一个按键被按下时,对应颜色LED会以一定频率闪烁。
(3)当两个或三个按键同时被按下时,LED会呈现不同的颜色组合,如红+绿=黄、红+蓝=紫等。
六、实验结论本实验通过按键输入控制多彩霓虹灯的亮灭和颜色变化,加深了对单片机控制的理解和应用。
同时,也进一步提高了编程能力和电路设计能力。
应用工程学院单片机应用技术实训报告专业:应用电子学号:1504150137姓名:许林日期:2016/12/24项目一按键控制多种花样霓虹灯设计一、任务目的1.理解实验板独立按键部分的电路原理。
2.掌握循环类、位操作类指令的应用。
3.熟练掌握51单片机集成开发软件的使用。
4.巩固C语言知识并灵活运用到单片机编程。
二、任务要求使用按键控制多种花样霓虹灯设计,电路板上有8个自上而下排列整齐的发光二极管,需要根据一个(或者三个)按键的输入来实现以下3种显示状态的切换:a.全部闪烁b.至上而下流水灯循环c.第8、6、4、2、1、3、5、7个发光二极管循环三、硬件电路设计四、软件设计#include<regx51.h>unsigned int n;void delayms(n){unsigned char i,j,k;for(i=15;i>0;i--)for(j=202;j>0;j--)for(k=81;k>0;k--);}void main(){unsigned char key,a,m;unsigned char codeled[]={0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff, 0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0xbf,0xef,0xfb,0xfe,0x7f,0xdf,0xf7,0xfd};P0=0xff;while(1){key=0;while(key==0){key=P3;key=~key;}while(key==0);switch(key){case 0x04:a=0;break;case 0x08:a=1;break;case 0x10:a=2;break;default:break;}do{for(m=0;m<8;m++){P0=led[a*8+m];delayms(10);P0=0xff;}key=P3;key=~key;}while(key==0);}}编程思想:用16进制数对对单片机编程,从而实现对彩灯控制。
多花样自动切换的彩灯控制器设计1 设计意义及要求1·1设计意义(1)让学生懂得设计的一些思想,培养学生的创新能力和探索知识的思路。
(2)让学生学会独立分析问题和解决问题。
(3)在课程设计过程中,学生需要计算参数和查阅设计资料、学习仿真软件,这让学生综合能力得到提高。
(4)巩固、深化了学生的理论知识。
1·2设计要求(1) 现有8只彩灯,试设计一控制器,要求彩灯能实现如下追逐图案:(2)第1种花样为彩灯从右到左,然后从左到右逐次点亮,全灭全亮,(3) 第2种花样为彩灯两边同时亮1个逐次向中间移动再散开;(4) 2种花样自动变换,循环往复。
时间间隔为1秒。
2·1设计思路依照实验要求,需要彩灯从右到左,然后从左到右逐次点亮,全灭全亮,然后彩灯两边同时亮1个逐次向中间移动再散开,所以电路需要两个四位双向移位寄存器74LS194,然后将两个以为寄存器进行扩展成实验要求的八位。
由于是四位移位寄存器,所以计数电路就要实现四进制计数,因此选择两个74LS161计数器。
由于两个移位寄存器,并且按照实验要求,因此需要控制电路两个数据选择器74LS151分别控制移位寄存器。
实验要求时间间隔为1秒,因此选用555定时器来实现。
最后在根据要求运用门电路来实现控制。
2·2·1设计方案一及电路图原理分析:电路有四部分组成。
第一部分是脉冲产生电路。
其他三部分是计数电路、控制电路、移位寄存显示电路。
计数电路有两片74LS161组成,下面一片计数器实现四进制计数,从0000到0011,然后回到0000,上面一片计数器的使能端与下面一片计数器输出端通过门电路相连,。
这样每次下面的计数器从0011变为0000时,上面的计数器就计数一次。
对应的74LS151数据选择器就会选择不同的电平,从而改变移位寄存器的选择功能,实现左移、右移、并行输入等功能。
当彩灯从右到左,然后从左到右逐次点亮后需要全灭全亮,此时就需要运用计数器各个输出端的门电路来控制计数器清零或者置零,并且让移位寄存器实现并行送入数据的功能,而且送入高电平全亮后立即改变为送入低电平全灭。
两个按键控制三个led的c语言程序以两个按键控制三个LED的C语言程序在嵌入式系统中,控制LED灯是一个常见的任务。
我们可以使用C 语言编写程序来实现这一功能。
本文将介绍如何使用两个按键来控制三个LED灯的亮灭。
我们需要准备一些硬件设备。
我们需要一个嵌入式开发板,上面有三个LED灯和两个按键。
这些LED灯和按键通常都有对应的引脚,我们需要将它们连接到开发板上。
接下来,我们可以开始编写C语言程序。
我们可以使用一个循环来不断检测按键的状态,并根据按键的状态来控制LED灯的亮灭。
我们需要定义LED灯和按键的引脚号码。
我们可以使用宏定义来给它们命名,这样可以方便我们在程序中使用。
```c#define LED1_PIN 2#define LED2_PIN 3#define LED3_PIN 4#define BUTTON1_PIN 5#define BUTTON2_PIN 6```接下来,我们需要初始化引脚的状态。
LED灯的引脚需要设置为输出模式,而按键的引脚需要设置为输入模式。
```cpinMode(LED1_PIN, OUTPUT);pinMode(LED2_PIN, OUTPUT);pinMode(LED3_PIN, OUTPUT);pinMode(BUTTON1_PIN, INPUT);pinMode(BUTTON2_PIN, INPUT);```然后,我们可以进入一个无限循环,不断检测按键的状态,并根据按键的状态来控制LED灯的亮灭。
```cwhile(1) {if(digitalRead(BUTTON1_PIN) == HIGH) {digitalWrite(LED1_PIN, HIGH);digitalWrite(LED2_PIN, LOW);digitalWrite(LED3_PIN, LOW);} else if(digitalRead(BUTTON2_PIN) == HIGH) {digitalWrite(LED1_PIN, LOW);digitalWrite(LED2_PIN, HIGH);digitalWrite(LED3_PIN, LOW);} else {digitalWrite(LED1_PIN, LOW);digitalWrite(LED2_PIN, LOW);digitalWrite(LED3_PIN, HIGH);}}```在上面的代码中,我们使用digitalRead函数来读取按键的状态,如果按键被按下,该函数将返回HIGH,否则返回LOW。
广东三向教学仪器制造有限公司“机电专业一体化教学课程教学改革试点班”启动研讨会现场观摩课工作页9个彩灯花样控制程序设计项目工作页一、工作任务名称:9个彩灯花样控制程序设计二、工作任务目标与要求:㈠、任务目标:有9个彩灯,接在PLC的Y0~Y10上,要求进行5种花样控制的编程设计㈡、任务要求:1、采用PLC技术控制彩灯的变化2、彩灯的变化至少要有5种花样(每种花样中每一个灯都必须用上)3、必须采用功能指令进行编程设计4、在任何时刻按下停止按钮,彩灯都必须停止工作;按下启动按钮后,从第一种花样开始工作,不断重复5种花样的变化。
5、各小组发挥团队合作精神,共同设计出PLC的I/O分配表,并设计出PLC程序,下载到控制彩灯的PLC内,验证程序功能,调整、优化程序。
你可能需要获得一下的资讯,才能更好地完成工作任务……………………………………………………………………………………三、工作任务准备㈠、相关理论知识1、前面我们已经进行过利用基本指令和步进指令编写彩灯的控制程序设计,根据任务的要求,必须采用功能指令来实现任务目标,为此,你可能需要获得以下的知识。
⑴、位右移指令①、该指令的助记符、指令代码、操作数、程序步如下表1-1☞:②、指令格式:如图1-1所示。
[S] [D] n1 n2图1-1 位右移指令梯形图格式和指令执行过程 ③、指令说明:(1)该指令的源操作数和目标操作数都是位元件,程序中的K16表示有16个位元件,即M0~M15;K4表示每次移动4位。
(2)当X10每接通一次,X0~X3的四个位元件的状态移入M0~M15的高端,低端自动溢出。
如图1-1所示。
①M3~M0→溢出 ②M7~M4→M3~M0 ③M11~M8→M7~M4 ④M15~M12→M11~M8 ⑤X3~X0→M15~M12。
(3)当采用连续执行型指令时,在X10接通其间,每个扫描周期都要移位,因此建议采用脉冲执行型。
⑵、位左移指令①、该指令的助记符、指令代码、操作数、程序步如下表1-2☞:②、指令格式:如图1-2所示。
3.21 按键彩灯控制器一、要求编写完整程序实现如下模拟彩灯,开发板从左至右4个按键分别为14~S S ,从上至下8个灯为18~L L ,按下1S 键,8只灯以1Z H 频率闪烁;按下2S 键,8只灯奇偶交替闪亮,间隔0.3s ;按下3S 键,14~L L 与58~L L 灯交替闪亮,间隔0.2s ;按下4S 键,所有灯熄灭。
二、仿真电路元器件:开关:DIPSW_4晶振:CRYSTAL复位电容CAP-ELEC 10uF电阻:RES 4.7k三、程序1、流程图2、程序#include<reg52.h>//包含命令,包含52单片机的特殊功能寄存器#define uint unsigned int//宏定义,定义用uint表示无符号整型#define uchar unsigned char//宏定义,定义用uchar表示无符号字符型uchar knum; ///定义变量void keyscan();/****************************延时子程序**************************/void delay(uchar z){uchar x,y;for(x=z;x>0;x--)for(y=120;y>0;y--);}/************************主函数*************************/void main()while(1){keyscan(); //键盘扫描if(knum==1) //按键是否按下{P1=~P1; //对8个灯取反delay(500);//延时}else if(knum==2)//按键是否按下{P1=0xaa; //交替闪delay(300);P1=0x55;delay(300);}else if(knum==3)//按键是否按下{P1=0xf0; //前四后四闪delay(200);P1=0x0f;delay(200);}else if(knum==4)//按键是否按下{P1=0xff; //全灭knum=0;}}}/***************************键盘扫描***************************/void keyscan(){if(P3!=0xff) //按键是否按下{delay(10); //前沿消抖if(P3!=0xff) //确认按键是否按下switch(P3){case 0xfe:knum=1;break;case 0xfd:knum=2;break;case 0xfb:knum=3;break;case 0xf7:knum=4;break;}while(P3!=0xff); //后沿消抖}}}四、仿真调试。
指导教师:许景辉多按键花样流水灯的设计摘要:自人类发明计算机以来,单片机技术在社会各领域中得到了广泛的应用。
在流水灯控制系统中,单片机的作用更是发挥的淋漓尽致,成为此系统中的核心部分。
利用单片机的可编程功能,软硬件结合,来控制LED的灯的开通关断,通过丰富多彩的花样变化,给人以不同的视觉效果,更是成为现代商业社会不可缺少吸引消费者的普遍手段。
本文结合单片机的突出特点,着重介绍通过单片机来实现多按键花样流水灯的变化,主要包括其软件程序的编写、硬件电路的搭接、器件的选择,以及通过PROTEUS的仿真和PCB板的制作等。
关键词:单片机、可编程控制器、多按键花样流水灯、准确。
目录前言 (4)第一章设计目的和要求 (5)1.1 设计目的 (5)1.2 设计基本要求 (5)第二章方案设计 (6)2.1 方案设计任务分析 (6)2.2硬件系统的设计要求 (6)2.2.1 主控系统 (7)2.2.2花样灯输入及中断控制模块 (7)2.2.3 花样灯输出控制部分 (8)2.2.4 时钟及复位部分电路 (9)2.3 软件总体设计 (13)2.3.1 程序设计流程图 (13)2.3.2 主程序 (13)第三章硬件设计 (17)3.1 80c51单片机 (17)3.2PCB板的生成 (18)第四章软件设计 (20)4.1 中断子程序 (20)4.2 跑马灯子程序 (20)4.3 流水灯子程序 (20)4.4戏水灯子程序 (21)4.5 延时子程序 (21)第五章操作说明 (22)5.1 跑马灯操作说明 (22)5.2 流水等操作说明 (22)5.3 戏水灯操作说明 (23)5.4 顺寻循环执行三种花样灯操作说明 (23)结束语 (24)参考文献 (25)前言单片微型计算机简称单片机(single-chip microcomputer),又称为单片机微型控制器(single-chip microcontroller),是由CPU、RAM、ROM、定时/计时器、I/O 接口电路通过应刷电路板上的总线连成一体的完整计算机系统。
多种图案霓虹灯控制器设计综合课设学号: 0121111360719课程设计题目学院专业班级姓名指导教师多种图案霓虹灯控制器设计自动化自动化自动化1103黄诚杨莉李波年月日课程设计任务书学生姓名:黄诚专业班级:自动化1103班指导教师:杨莉李波工作单位:自动化学院题目: 多种图案霓虹灯控制器设计初始条件:1.运用所学的模拟电路和数字电路等知识;2.用到的元件:实验板、电源、连接导线、74系列芯片、555芯片等。
要求完成的主要任务:1.现有4只彩灯,红-绿-蓝-黄,试设计控制器,要求彩灯能实现如下追逐图案,彩灯控制器的三种图案及其状态转换如下所示:2.摇摆状态0101←→1010,重复6次。
3.暗点循环0111→1011→1101→1110→0111→这样重复循环3次。
4.霓虹灯控制工作状态按照上述2至3步自动重复循环。
时间间隔为1秒。
5.严格按照课程设计说明书要求撰写课程设计说明书。
时间安排:第1天下达课程设计任务书,根据任务书查找资料;第2~4天进行方案论证,软件模拟仿真并确定设计方案;第5天提交电路图,经审查后领取元器件;第6~8天组装电路并调试,检查错误并提出问题;第9~11天结果分析整理,撰写课程设计报告,验收调试结果;第12~14天补充完成课程设计报告和答辩。
指导教师签名:年月日系主任签名:年月日1目录引言 1 1 设计意义及要求 ................................................ .. (2)设计意义 (2)设计要求 (2)2 方案设计 ................................................ .. (3)设计思路 (3)方案设计 (4)设计方案一电路图 ..................................... 4 设计方案二电路图简单说明 . (5)方案比较 (5)3 部分电路设计 ................................................ (5)暗点循环 (5)摇摆状态 ..................................... 6 二十四进制计数器 ............................. 7 时钟脉冲信号的制作 ........................... 8 两种状态的切换与叠加 .. (9)两种状态的切换 ....................................... 9 两种状态的叠加 .. (10)4 调试与检测 (11)调试中故障及解决办法 .......................11 调试与运行结果 115 仿真操作步骤及使用说明 (12)结束语 ................................................ .. (13)武汉理工大学《电工电子综合课程设计》说明书二十四进制计数器24进制计数器两片74LS90组成,其连接方式如图所示。
按键控制霓虹灯应用场景介绍霓虹灯是一种具有高亮度和鲜艳颜色的照明装置,它常用于商业广告、装饰和照明等场景。
随着科技的发展,人们开始探索如何利用按键来控制霓虹灯,从而实现更多的应用场景。
本文将深入探讨按键控制霓虹灯的应用场景,并介绍相关的技术原理和实现方式。
技术原理按键控制霓虹灯的实现原理主要涉及以下几个方面:1.电路连接:将按键与霓虹灯的控制电路相连接,通过按键的开关动作来触发相应的控制信号。
2.控制信号生成:通过按键的开关动作触发控制信号的生成,可以使用微控制器或其他电子元件来实现。
3.控制信号传输:将控制信号传输到霓虹灯的控制电路中,以实现对霓虹灯的亮灭、颜色变换等控制。
4.电源供应:为霓虹灯和控制电路提供稳定的电源供应,以确保正常工作。
应用场景按键控制霓虹灯的应用场景多种多样,下面将分别介绍几个常见的应用场景。
1. 商业广告商业广告是按键控制霓虹灯的主要应用场景之一。
通过设置不同的按键,可以控制霓虹灯的亮灭、颜色变换和闪烁等效果,从而吸引顾客的注意力。
例如,在商店门口设置一个按键控制的霓虹灯装置,顾客按下按键后,霓虹灯会展现出不同的动态效果,吸引顾客进入店内。
2. 舞台演出在舞台演出中,按键控制霓虹灯可以用来增强舞台效果和氛围。
通过设置多个按键,可以实现对不同区域的霓虹灯进行独立控制,从而创造出多彩的灯光效果。
例如,在音乐会上,演唱者可以通过按键控制霓虹灯的颜色和亮度,与音乐的节奏和情感相呼应,营造出动感和激情的舞台效果。
3. 节日庆典在节日庆典中,按键控制霓虹灯可以用来增加庆典氛围和互动性。
通过设置特定的按键,可以控制霓虹灯的亮灭、颜色变换和闪烁等效果,与庆典的主题相呼应。
例如,在圣诞节期间,可以设置一个按键控制的霓虹灯装置,顾客按下按键后,霓虹灯会展现出圣诞树、雪花等图案,增加节日的气氛。
4. 建筑装饰按键控制霓虹灯也可以用于建筑装饰中,通过设置多个按键,可以实现对建筑物外墙上的霓虹灯进行独立控制,创造出丰富多样的灯光效果。
AVR 单片机(C 语言)项目开发实践教程 72 第1步:将行线编程为输入线,列线编程为输出线,并使输出全为低电平。
则行线中电平由高到低变化的行为被按下键所在的行。
第2步:同第1步相反,将行线编程为输出线,列线编程为输入线,并使输出线输出全为低电平。
则列线中电平由高到低所在的列为按键所在的列。
综合这两步结果可确定按键所在的行和列,从而识别出所按下的键。
例如图6-5中第1行最后一个键被按下。
第1步列线输出行线输入,读入PB 口后得到0EH 。
第2步行线输出列线输入,再读入PB 口后得到E0H 。
综合第1、第2步,将两次得到的0EH 、E0H 合成为(相或)EEH ,则EEH 为被按下键3号键的键值。
照此分析,每个键的键值是唯一的。
这样我们通过查表方法就可圆满解决键识别的问题。
任务二 多功能按键控制LED 灯
一、任务要求
利用A Tmega16单片机数字I/O 口,实现对按键状态的读取,控制霓虹灯的不同显示花样。
例如:当按下开关按键K0,按下LED 进入可以点亮状态,K1有效,再按一下LED 进入熄灭状态,K1无效;连续按功能按键K1可以实现彩灯D1、D2、D3、D4的交替点亮,模拟家庭多功能彩灯功能。
二、硬件设计
多功能按键控制LED 电路原理图如图6-6所示,省略了ATmega16单片机外部应接的电源电路、复位电路等部分外围电路,PD7
、PD6分别接功能按键,PC0~PC3分别连接LED 。
图6-6 多功能按键控制LED 硬件原理图。