导航:首页 > 操作系统 > 单片机按键控制

单片机按键控制

发布时间:2022-01-11 18:42:22

单片机怎么用简单按键控制LED

#include "reg52.h"

#define uchar unsigned char
#define uint unsigned int

sbit led =P1^0;//假设灯在P1.0

sbit key1=P2^0;//假设按键在P2.0和P2.1
sbit key2=P2^1;//

void delay_1s(uint x)//延时
{
uint y;
uint z; //如果延时不够长可以把z的值加大
while(x--)
{
for(y=0;y<50000;y++)
{
z=200;;
while(z--);
}
}
}

void main(void)

{
led=1; //不亮

while(1)
{
if(key1==0 && key2==1)//按键1按下,按键2没按
{
led=0; //亮
}
else if(key1==1 ) //按键1释放或未按时,灯灭
{
led=1; //灭
}

if(key2==0 && key1==1) //按键2按下,按键1没按
{
led=0; //先亮
delay_1s(30); //等30秒
led =1 ; //30秒后灭
}

}
}

⑵ 51单片机按键控制

#include<reg52.h>
sbit key=你接按钮的端口;
sbit led=你接LED的端口;
void delay(unsigned int ms)
{
unsigned int x,y;
for(x=ms;x>0:x--)
for(y=100;y>0;y--);
}

void main()
{
while(1)
{
if(key==0)//判断键是否按下
{
delay(10);//10ms延迟
if(key==0)//消抖
{
led=1;//如果共阳极led=0;
delay(500);
led=0;
}
}
}
}

⑶ 单片机用一个按键随意切换控制三种模式

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int

uchar time,sec,keyval;

sbit D1=P3^3;
sbit D2=P3^4;
sbit KEY=P3^5;

void t0isr() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
time++;
if(time>=20)sec++;
}
main()
{
TMOD=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
ET0=1;
EA=1;
keyval=0;
while(1)
{
switch(keyval)
{
case 0: TR0=1;sec=0;
if(sec<30){D1=0;D2=1;}
else {D1=1;D2=1;}
break;
case 1: TR0=1;sec=0;
if(sec<30){D1=1;D2=0;}
else {D1=1;D2=1;}
break;
case 2: TR0=1;sec=0;
if(sec<30){D1=0;D2=1;}
if(sec>=30 && sec<60){D1=1;D2=0;}
else {D1=1;D2=1;}
break;
default:break;
}

}
}

⑷ 单片机怎么用简单按键控制LED

给你个C语言的
#include<stc.h> //头文件
sbit jian=P1^0;
sbit LED=P1^1;
void ys(unsigned int ); //声明延时函数
void main()
{
while(1)
{
LED=1; //让LED点亮,其实这条语句可以不写,因为单片机的IO口默认就是高电平
if(jian==0) //判断按键是否按下
{
ys(1000); //延时消抖
if(jian==0) //再次判断按键是否按下,这条语句很有必要。
{
LED==0; //LED 熄灭
}
}
}
}
/*延时函数*/
void ys(unsigned int i)
{
unsigned x;
for(x=0;x<5000;x++)
for(x=0;x<a;x++);
}

程序是在这里编写的,不是用编译器,可能存在语法错误

⑸ 单片机按键功能

按键按照结构原理可分为两类,一类是触点式开关按键,如机械式开关、导电橡胶式开关等;另一类是无触点式开关按键,如电气式按键,磁感应按键等。前者造价低,后者寿命长。目前,微机系统中最常见的是触点式开关按键。


2.输入原理



在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据的。当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,键信息输入是与软件结构密切相关的过程。

对于一组键或一个键盘,总有一个接口电路与CPU相连。CPU可以采用查询或中断方式了解有无将键输入,并检查是哪一个键按下,将该键号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序

⑹ 51单片机如何用一个按键控制一段程序的运行与停止

1、创建项目文件。

6、当按下一个按键时,关闭灯,整个程序运行,再按一次,程序停止。

⑺ 单片机如何实现多按键同时控制

单片机内核决定了只能是单任务,如果使用实时系统的话,通过时间片可以实现虚拟多任务,不过效率不高。象你这种情况其实,循环扫描按键就可以了

⑻ 单片机一个按键控制一个程序

你把几种方式写成几个子程序,然后主程序调用按键检测,根据检测到的键值调用对应的子函数即可

⑼ 单片机按键控制小灯程序

用c给你编一下
#include<reg52.h>//89s52单片机头文件
#define
K1
=
P0^0
;
//用宏定义定义按键1
#define
K2
=
P0^1
;
//用宏定义定义按键2
#define
LED
=
P3^7
;
//用宏定义定义小灯
void
LED_shuanshuo
(char
a
);
void
main
(void)
{
char
a
;
while(1)
{
if(k1)
a
=
5;
//此处的值可以从0
-
255
次之间闪烁
if(k2)
a
=
10
;//此处的值可以从0
-
255
次之间闪烁
LED_shuanshuo
(a
);
}
}
void
LED_shuanshuo
(char
a
)
{
char
b;
for(b
=
0
;
b
<
a
*
2
;
b
++)
{
LED
^=
1
;
}
LED
=
1
;
//1
代表灯亮
0
代表灯灭
}

⑽ 单片机按键控制led灯

假设led连在P0口,高电平点亮,按键在P3.0口,低电平有效,则

MAIN:
MOV P0,#00
MOV R0,#00

LOOP:

MOV A,R0
MOV P0,A

JB P3.0,LOOP ;按键

LKEY1:
JB P3.0,L2;;等待弹起
MOV A,R0
MOV P0,A
AJMP LKEY1
L2:
MOV A,R0
CJNE A,#0FFH,L3
MOV A,#0
AJMP L4
L3:

MOV A,R0
SETB C

RLC A ;循环左移1位,逐位点亮
L4:
MOV R0,A
MOV P0,A

AJMP LOOP

阅读全文

与单片机按键控制相关的资料

热点内容
服务器一直崩应该用什么指令 浏览:916
cm202贴片机编程 浏览:724
php构造函数带参数 浏览:175
解压电波歌曲大全 浏览:336
为啥文件夹移到桌面成word了 浏览:858
命令符的安全模式是哪个键 浏览:758
编程中学 浏览:956
单片机求助 浏览:993
ug加工侧面排铣毛坯怎么编程 浏览:271
程序员有关的介绍 浏览:736
支付宝使用的什么服务器 浏览:210
安卓看本地书用什么软件好 浏览:921
经传软件滚动净利润指标源码 浏览:522
萤石云视频已加密怎么解除 浏览:574
一命令四要求五建议 浏览:30
qq文件夹迁移不了 浏览:19
液体粘滞系数测定不确定度算法 浏览:332
轻栈源码 浏览:426
把图片压缩到500k 浏览:35
命令你自己 浏览:369