當前位置:首頁 » 編程語言 » 2個按鍵控制2個燈c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

2個按鍵控制2個燈c語言

發布時間: 2023-05-20 13:29:02

❶ 51單片機c語言對鍵控雙向流水燈編程。用兩個按鍵,中端來做。

#include<reg51.h>
#define uchar unsigned char
uchar num,temp,times,led;
t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
times++;
if(times>=10)
{
times=0;
P0=led;
if(key1==0){
num++;
num&=0x07;
}
else if(key2==0)
{
if(num>0)num--;
else(num=7;
}
led>>=num;
}
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
TR0=1;
ET0=1;
EA=1;
LED=0x0xfe;
num=0;
times=0;
while(1);
}

❷ C語言兩個開關控制兩個燈,兩開關全部閉合燈都不亮,一開一關只有一個燈亮(開關相聯

if a=1&b=1
c =0 d= 0
else if a|b=1
c=0 d=1 (c=1 d=0)
else c=1 d= 1
switch((a<<1)|b)
case 00:
case 01:
case 10:
case 11:

❸ 用c語言控制兩個燈的閃爍

delay()這個函數在哪?你沒寫啊,開頭也沒有聲明。然後 如果你是想實現兩個燈閃爍,你寫的內容都要放在第一個while(1){} 里,因為while(1)這循環沒有break語句,除了你調用子函數,其他的不會被執行到的。

❹ 求一單片機c語言程序:兩個按鍵控制兩個led,按鍵按住不放led閃爍,鬆手led熄滅

一個按鍵時程序如下:
while(1)
{
if(key==0)//按鍵按下
{ delayms(20);//延時消抖
if(key==0)//再次判斷按鍵是否按下
{
while(key==0)//按鍵沒有凳乎隱抬起
{ led=!led; delayms(200);}/頃明/LED閃爍棗廳
}
}
else led=0;
}

❺ 兩個按鍵怎麼實現兩個Led燈切換,單片機c語言怎麼寫

whiIe(1)
{if(key1==0)
{deIayms(首世罩20);
if(者鬧key1==0){led1=1;led2=1;}
}
if(key2=0)
{deIayms(返姿20);
if(key2=0){led1=0;led2=0;}
}
}

❻ 單片機編寫兩個按鍵控制兩個LED燈的程序,要求當按下任何一個按鍵並松開後,兩個LED燈的亮滅狀態同時改變

#include"reg51.h"
#define K p0^7
#define LED_BLUE p0^0
#define LED_RED p0^4
void scan_key(void);//用來控制譽段祥燃悶LED_RED
void DelayMS(unsigned int x);
void main()
{
while(1)
{
if(K==0)
LED_BLUE=1;
scan_key();
else
LED_BLUE=0;
}
}
void scan_key(void)
{
unsigned int i;
for(i=0;i<10000;i++);
LED_RED=0;
DelayMS(50);
}
//慶搏延時
void DelayMS(unsigned int x)

{

uchar i;

while(x--) for(i=0;i<120;i++);

}

❼ 求一單片機C語言程序:兩個按鍵控制兩個LED KEY1按一下LED1亮 再按一下LED1滅 KEY2按下LED2亮 LED1滅

#include<reg51.h>

sbit key1 = P1^0;
sbit key2 = P1^1;
sbit led1 = P1^2;
sbit led2 = P1^3;

void Delay(unsigned int x)
{
unsigned int i, j;
for(i = 0; i < x; i++) for(j = 0; j <= 148; j++);
}

//KEY1按一下LED1亮 再按迅圓一下LED1滅
//KEY2按下攔昌叢LED2亮 LED1滅

main()
{
while(1) {
if (!key2) { led1 = 1; led2 = 0;}
else {
if(!key1) {
Delay(10);
if(!key1) {
while(!key1);
led1 = ~led1;
} } } }
}
//--------------------------------
#include<簡櫻reg51.h>

sbit key1 = P1^0;
sbit key2 = P1^1;
sbit led1 = P1^2;
sbit led2 = P1^3;

void Delay(unsigned int x)
{
unsigned int i, j;
for(i = 0; i < x; i++) for(j = 0; j <= 148; j++);
}

main()
{
while(1) {
if(!key1) {
Delay(10);
if(!key1) {
while(!key1);
led1 = ~led1;//KEY1按一下LED1亮 再按一下LED1滅
} }
if(!key2) {
Delay(10);
if(!key2) {
while(!key2) led1 = 1; //按下KEY2時LED1滅
led2 = ~led2;//KEY2也是這樣
} }
}
}

❽ 51單片機 C語言 如何寫代碼。控制2個LED的亮和滅。

比如你的8個燈連在 P0口,如果是陰極的
你消態只要先定義
sbit P0^0=LED0;
.....一定定義下去
然後再定義歲橋腔一個按鈕
比如P1.1
sbit P1^1=key;
代碼里寫
123456789while(true){if(key==1){LED0=0;LED1=0;..//把你要亮的乎衫燈置0就行了。陽極的話置1}}

❾ 求一個程序,兩個獨立按鍵控制流水燈左右循環的程序,謝謝

#include<reg51.h>
#defineucharunsignedchar
ucharled=0xfe;
sbitkr=P3^2;
sbitkl=P3^3;
ucharkey;
voiddelay(uchara)
{
uchari;
while(a--)for(i=0;i<120;i++);
}
voidext0()interrupt0
{
key=1;
while(kr==0);
}
voidext1()interrupt2
{
key=2;
while(kl==0);
}
main()
{
EX0=1;
EX1=1;
IT0=1;
IT1=1;
EA=1;
while(1)
{
if(key==1){P1=led;led=_cror_(led,1);}
elseif(key==2){P1=led;led=_crol_(led,1);}
念搜返elseP1=0xff;
漏凱delay(200);
仔飢}
}