单片机按下灯亮松开灯灭
巩钱委4213单片机按键问题 -
韦旭琰17764074115 ______ 1.中断方式(这个比较可靠) 一般程序按键按下后 灯亮 然后按键松开灯还是亮的 采用的是边沿检测,即有电平跳变就改变输出.如果想按键按住的时候灯亮,不按的时候灯不亮 采用电平触发,即当电平维持是正或者负的时候才稳定输出.2.也...
巩钱委4213单片机每个按键对应一个LED,按一下按键,对应的灯亮,再按一下该按键,对应的灯灭, -
韦旭琰17764074115 ______ 这个程序太简单了哦. 比如你的按键是P2.0,灯是P2.1的话程序如下: org 1000H lcall keyscan sjmp $ keyscan: push acc mov a,p2 jb acc.0,here lcall delay mov a,p2 jb acc.0.here cpl p2.1 here: ret delay: mov r6,20 delay1: mov r7,200 delay2: nop nop nop djnz r7,delay2 djnz r6,delay1 ret
巩钱委4213基于51单片机的c语言程序 -
韦旭琰17764074115 ______ #include <reg51.h> void delayms(unsigned char ms) { unsigned int i; i=1200; while(ms--) { while(i--) ; } } void main() { if(KEY1) LED1=1; else LED1=0;// if(!KEY2) { delayms(10); if(!KEY2) { LED2=!LED2; } while(!KEY2 ) ; } }
巩钱委4213单片机C程序:89C51 开关(P1 - 1)按下并持续10秒后,LED(P1 - 0)亮并保持亮,开关松开后,LED便保持灭状态 -
韦旭琰17764074115 ______ #include<reg52.h>#define uint unsigned int uint num; sbit P1_0=P1^0; sbit P1_1=P1^1; void delay(uint z)//延时函数 { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); } void main() { TMOD=0x01; //选用T0定时器模式 TH0=(65535-45872)/256; //T1初值50...
巩钱委4213单片机ATc52,实现按下key1,led1亮,再按下key2,led2亮led1灭,求具体程序 -
韦旭琰17764074115 ______ 具体看LED的接法,改变两个if的参数,改变状态效果:例如led一边接了高电平,连接单片机这边给led=0为亮,若led一边为地GND(就是低电平)另外一边就要led=1才亮. 以下程序为一边接高电平,单片机引脚给0亮给1灭 #include <reg52.h> sbit led=P1^0; sbit key1=P1^1; sbit key2=P1^2; void main() { led=1;//初始化输出,可初始化=0 while(1) { if(key1==0) { led=0;//亮 } if(key2==0) { led=1;//灭 } } }
巩钱委4213单片机C语言怎么实现按键松开,灯还保持松开前的状态 -
韦旭琰17764074115 ______ 在你需要保持状态的语句后加死循环:while(1);
巩钱委421351单片机用两个按钮控制一个LED灯的亮灭(不是那么简单请看我要求) -
韦旭琰17764074115 ______ 对你这种编程思想,我想问是跟谁学的啦! 对你这程序,我想问①先按K3、后按K2,你觉得程序结果会如何?②如果2个按键都按住不放,结果又会如何. 考虑一下上面的问题,就能看到你的程序问题了.当然你的程序问题,跟你的题目一样,没那么简单!后面还有一堆!!
巩钱委4213用51单片机的10做10个按键和串口控制一盏灯的亮和灭. -
韦旭琰17764074115 ______ 写程序就算了,给你思路吧.P0口和P1.0\P1.1所做的按键按下时,都做同一件事,比如:sbit SW7=P1^1; sbit LED=P1^3; bool led_flag; if(!SW7) //按键7被按下 { led_flag=~led_flag; //将灯亮灭标志位取反 while(!SW7); //等待松开按键 } 而在主函数mian中还有一个灯亮灭的函数 led() { if(led_flag) //如果是灯灭的指令,则延时3秒,再将灯引脚电平翻转 Delay3s(); LED=led_flag; } 串口的不多说了.做的事情都是一样的
巩钱委4213单片机控制一个小灯的亮、灭,延时. -
韦旭琰17764074115 ______ 剪了一段程序你试试吧: #include #define uint unsigned int #define uchar unsigned char #define u_s 50000//12MHz晶振 sbit LED=P1^0; //LED出端 uchar count,second=0; //标志变量 /*************************************************** 定时器0中断子...
巩钱委4213c51独立按键程序,按下k1按键后对应的灯亮,但松开k1按键后灯还亮,k2也是如此,求大侠! -
韦旭琰17764074115 ______ 这个程序中没有熄灭的程序,单片机当然不会有熄灭的操作.修改如下:if(k1==0) P2=0xee; else P2=0xff; if(k2==0) P2=0xfd; else P2=0xff; 这是按住就亮,松开就灭的程序.如果想实现按一次亮,再按一次熄灭.程序如下:bit a=0,b=0;//做按键点亮熄灭标志 while(1) { if(k1==0&&a==0) { P2=0xee; a=1; } else if(k1==0&&a==1) { P2=0xff; a=0; } if(k2==0&&b==0) { P2=0xfd; b=1; } else if(k1==0&&b==1) { P2=0xff; b=0; } }