4个按键控制八个流水灯

作者&投稿:仪尤 (若有异议请与网页底部的电邮联系)

急求单片机课程设计.要求:八个按键控制八个LED,按下一个按键相应的LED...
8个按键接P1口,8个LED接P0口。ORG 00H AJCX:JNB P1.0, AJCL-1 ;键按下,转移到消抖延时程序 JNB P1.1, AJCL-2 ;键按下,转移到消抖延时程序 JNB P1.2, AJCL-3 ;键按下,转移到消抖延时程序 JNB P1.3, AJCL-4 ;键按下,转移到消抖延时程序 JNB P1.4, AJCL-5 ;键按下...

proteus哪个按键开关可以控制流水灯方向
K1、K3、K4。K1是总开关,当K1首次按下时,流水灯由下往上流动、当K2按下时停止流动、当K3按下时,使灯由上往下流动、K4则是由下往上流动。

51单片机8路流水灯! 用三个按键控制三个程序!每个按键对应一个程序...
sbit key3=P1^2;uchar led1[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};uchar led2[]={0xe7,0xdb,0xbd,0x7e};bit flag;void delay(uchar a){ uchar i;while(a--)for(i=0;i<120;i++);} void prog1(void){ uchar i;while(flag){ P0=led1[i];i++;i%=8;delay(...

用外中断0控制P1口8位LED循环点亮,即按下一次按键,点亮一个灯,再按...
将流水灯中的定时循环,改为按键控制的循环即可,其它相同.

单片机c语言编了个流水灯,用按键怎么实现它暂停。
uint Flag1=0; 按键标志位bai uint Flag2=0;while(1){ Flag1 = keyscan();if(Flag1==1)(Flag2=~Flag2); \/\/如果一旦检测到一次按键扫描就把标志位2 打开;再次就关闭;if(Flag2==1)\/\/ 如果标志位打开就开始流水灯 { temp=0x01;for(i=0;i<8;i++) \/\/8个流水灯逐个闪动 { P1...

单片机通过按键切换流水灯
简单点的,用表格,事先计算好,放到ROM中,用的时候逐行编译输出就可以。 复杂点的,开一个缓冲区,用循环程序,根据花样的不同,每次填充一行,并输出,然后再计算一下行。除非表格太大,不建议这样用。当单片机接收到按键的闭合信号时,它会通过GPIO口输出高低电平来控制流水灯的亮灭。具体来说,当...

求求好心人出现吧51单片机8个按键控制8个发光二极管,单个控制,使用汇编...
汇编语言的变成已经很不习惯了。假设 八个开关分别接在 P1.0—— P1.7,八个发光二极管接在 P0.0 -P0.7 。汇编语言编程如下。ORG 0000H start: mov P1,#0ffH mov P0,#0ffH mov A,P1 mov P0,A lcall delay ljmp start delay:mov r7,#100 loop:mov r6,#100 djnz r6,djnz r7,loop...

用矩阵键盘上的键控制流水灯暂停的程序怎么编啊 用 C语言
这个。。流水灯用for()语句来循环,循环内部用delay来延时控制流水的运转速度。设置一个变量M,这个变量在每次循环的情况下都要赋值一次,从哪里赋值呢??就是判断一下你指定按键是否按下,按下了,这个变量M为1,没按下,这个变量M为0,然后你在for语句的中间那个判断表达式中加入一个条件:那就是...

如何用两个按键控制16个流水灯的流速 要求共8个流动速度 (c语言程序...
\/\/用两个按键控制16个流水灯的流速 要求共8个流动速度 include<reg52.h> void delay(unsigned char k)\/\/延时函数 { unsigned char i,j; \/\/定义两个变量,用于空循环 k=k*8;for(i=0;i<k;i++)for(j=0;j<255;j++);} unsigned char flag;void main(){ unsigned char i;flag=1;E...

单片机按键控制4个LED,第一次按从左到右亮,第二次按从右到左亮。跪求...
我这个是8 个流水灯的,汇编的。除了你要的2 种花样外,还有另2 种花样。你可以参考 ;4花样流水灯 2010.05.11 AN EQU P3.0 ORG 0000H AJMP MAIN ORG 0003H AJMP EX0INT ORG 0030H MAIN: SETB EA SETB EX0 SETB IT0 ACALL DISP AJMP MAIN EX0INT: INC R0 CJNE R0,#5,RTI MOV R0...

茶祝17884611951问: 51单片机摁键控制流水灯? -
岗巴县夏桑回答: 用4个按键控制流水灯,P1口接8个LED流水灯,P3.4~P3.7接有4个按键,仿真图如下.

茶祝17884611951问: 51单片机程序:按键控制流水灯 -
岗巴县夏桑回答: 低电平点亮START:MOV R0,#8 MOV R1,#8 SETB C MOV A,#0FEH MOV P1,A S1:RLC A CALL DELAY MOV P1,A DJNZ R0,S1 SETB C MOV A,#0FEH MOV P2,A S2:RLC A CALL DELAY MOV P2,A DJNZ R1,S2 AJMP START DELAY:MOV R5,#0FFH //改变值变延时时间 LOOP2: MOV R4,#0FFH//改变值变延时时间 LOOP1:DJNZ R4,LOOP1DJNZ R5,LOOP2RET END

茶祝17884611951问: 求一个C程序,用一个按键控制8个流水灯,当按下按键时,流水灯暂停,当再一次按下按键时,流水灯继续流动 -
岗巴县夏桑回答: void public run{ LOOP (int i = 0 ,i++) {when (i<8){this.lamp.light = true;}else{breakl;} } }

茶祝17884611951问: 单片机c52怎么用4个键控制四种方式的流水灯,还能暂停,求解决!!! -
岗巴县夏桑回答: 不用中断一样的实现,而且可以有多少个按键就可以有多少种流水灯方式.你使用的键盘函数直接调用流水灯函数就可以.比如使用独立键盘,if(P1.1==0) light_water(); 然后:void light_water() { num=1; for(a=0;a{ P1.1=numdelay(1000); //延时;keyboard();//执行时又不停扫描键盘函数;} } 这样就会有一个LED从右往左移动8次;那么当第一次流水未完时,又调用第二个流水函数light_water1就能中断当前执行的流水函数又去执行第二个流水灯函数了.希望我的回答能帮助到你.

茶祝17884611951问: 用汇编语言编写一个按钮控制8个流水灯的亮灭 -
岗巴县夏桑回答: 51汇编程序如下: KEY EQU P3.2 LED EQU P1 ORG 0000H LJMP MAIN ORG 0030H MAIN:CLR 00H MOV A,#0FEHLOOP:JB P3.2,LOOP1 JNB P3.2,$ CPL 00HLOOP1:JB 00H,LOOP2 MOV LED,#0FFH SJMP LOOPLOOP2:MOV P1,A RL A LCALL DELAY SJMP LOOPDELAY:MOV R2,#200DLY1:MOV R3,#250 DJNZ R3,$ DJNZ R2,DLY1 RET END

茶祝17884611951问: (1/2)关于单片机的,用按键来控制8个流水灯 要求:用外部中断资源,按键每按一次,灯循环移位一次,包... -
岗巴县夏桑回答: 看了下你的程序,你程序目的是这个:按k1键流水灯右移,按k2流水灯左移,对吧 对于你的疑问1: key_s|=k2 是这样算的,这个表达式相当于key_s=k2|key_s; 刚开始key_s=0x00对吧,假如你按下k2,则key_s=0x01;对吧,是k2与key_s的最...

茶祝17884611951问: 多按键花样流水灯 -
岗巴县夏桑回答: #includesbit key1=P3^0; sbit key2=P3^1; sbit key3=P3^2; sbit key4=P3^3; unsigned char code pao[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff}; unsigned char code liu[]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0xff}; unsigned char code yua[]={0x...

茶祝17884611951问: 51单片机双键控制八位流水灯C程序 -
岗巴县夏桑回答: #include<reg51.h>#define uchar unsigned char uchar num,flag=0; sbit K1=P1^0; sbit K2=P1^1; void t0isr() interrupt 1 { TH0=(65536-50000)/256; TL0=(65536-50000)%256; num++; if(num>=20){num=0;flag=1;} } main() { uchar LED; TMOD=0x...


本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网