让单片机LED灯按一下键保持一种状态
发布网友
发布时间:2024-09-07 07:43
我来回答
共5个回答
热心网友
时间:2024-10-13 05:47
#include<reg51.h>
sbit key=P1^0; //P1.0接按键,P1.1接LED灯高电瓶电亮,按键为低电瓶有效
sbit LED=P1^1;
void delay(unsigned long w)
{
while(w--);
}
void main()
{
while(1)
{
while(key==0)
{
if(LED&(1<<1)) LED=0;
else LED=1;
delay(20); //去抖动
}
}
}
热心网友
时间:2024-10-13 05:47
你要汇编还是C语言
#include <REGX51.H> //AT89S51头文件
#define uint unsigned int
#define uchar unsigned char
sbit key=P1^0;
sbit led=P0^0;
/***延时1ms***/
void delay(uchar i)
{ uint x;
for(;i>0;i--)
for(x=114;x>0;x--);
}
void main(void)
{
while(1)
{
if(key==0)
{
delay(5);
if(key==0)
led=~led;
while(!key);
}
}
}
热心网友
时间:2024-10-13 05:48
搞个变量记录按键按下的次数,为奇数的时候灯亮 偶数的时候灯灭
热心网友
时间:2024-10-13 05:48
分太少,我不想说!
热心网友
时间:2024-10-13 05:49
这个按键当输入 随便找个输出就行了啊
热心网友
时间:2024-10-13 05:47
#include<reg51.h>
sbit key=P1^0; //P1.0接按键,P1.1接LED灯高电瓶电亮,按键为低电瓶有效
sbit LED=P1^1;
void delay(unsigned long w)
{
while(w--);
}
void main()
{
while(1)
{
while(key==0)
{
if(LED&(1<<1)) LED=0;
else LED=1;
delay(20); //去抖动
}
}
}
热心网友
时间:2024-10-13 05:48
你要汇编还是C语言
#include <REGX51.H> //AT89S51头文件
#define uint unsigned int
#define uchar unsigned char
sbit key=P1^0;
sbit led=P0^0;
/***延时1ms***/
void delay(uchar i)
{ uint x;
for(;i>0;i--)
for(x=114;x>0;x--);
}
void main(void)
{
while(1)
{
if(key==0)
{
delay(5);
if(key==0)
led=~led;
while(!key);
}
}
}
热心网友
时间:2024-10-13 05:48
搞个变量记录按键按下的次数,为奇数的时候灯亮 偶数的时候灯灭
热心网友
时间:2024-10-13 05:49
分太少,我不想说!
热心网友
时间:2024-10-13 05:49
这个按键当输入 随便找个输出就行了啊