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

单片机键控

发布时间:2022-01-29 08:46:01

⑴ 51单片机按键控制点灯

按键 PIN1接电阻 电阻上拉到VCC ,PIN2接地,PIN1接到51的IO口1
灯接在51的IO 口2,假设能够驱动
1:设置IO口1为输入
2:设置IO口2为输出
3:循环检测IO口1是否为低电平0
4:如果是0,则写IO口2为1,设置为高电平点灯
5:while循环空指令,根据指令周期,计算500ms要多少个指令
6:5的while循环结束后,写IO口2为0,灭灯
7:重复到步骤3

⑵ 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;
}
}
}
}

⑶ 51单片机键控信号发生器

发现我去年做了一个这样的,不过我只弄了3种波形,频率方波的2K这样,正弦波就比较小了,250HZ以内。按键控制波形切换、频率增减,幅度增减

⑷ 单片机怎么用简单按键控制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++);
}

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

⑸ 单片机中怎样定义一个按键控制转换三个模式

参考如下: 假设按键按下为低电平; if(key1==0) { while(key1==0);//弹起后执行 { 按键1需要执行的功能; } } if(key2==0) { while(key2==0);//弹起后执行 { 按键2需要执行的功能; } }

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

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

⑺ 求单片机按键控制数码管程序

实现方法有挺多种的,下面介绍一种:
1、按键子程序:
实现按第一个键使键值keyvalue=1,第二个键使键值keyvalue=2,第三个键使键值keyvalue=3
2、显示子程序
定义3个字节的显示缓存,如dispbuf1,dispbuf2,dispbuf3
使dispbuf1的数字显示在第一个数码管上,dispbuf2的数字显示在第2个数码管上,dispbuf3的数字显示在第3个数码管上
3、主程序:
初始化按键次数keycount为0

检测按键,任意一个键(比如说是第2个键)被按后,keycount 加1,并将keyvalue值(2)送给dispbuf1(则第一个数码管将会显示2),再有任意一个按键按下后,keycount 加1,并将keyvalue值送给dispbuf2,再有任意一个按键按下后,keycount 加1,并将keyvalue值送给dispbuf3

⑻ 单片机按键控制LED汇编程

30s 之内,又有按键按下,LED 应该怎么变化?

参考一下:

http://hi..com/do_sermon/item/21321b80887395d25e0ec1f8

⑼ 单片机怎么用简单按键控制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单片机 怎么用按键控制循环语句

while(1)语句只能用在主程序,而且只要用一次。如果子程序也用,必须有条件判断语句,跟一个return语句返回。
再说你的三个子程序,既然用for控制了循环次数了,为什么要用while(1)呢?而且明明知道是死循环还用?三个子程序都把那个while(1)删掉就行了!

阅读全文

与单片机键控相关的资料

热点内容
怎么用c语言编译简单的小游戏 浏览:812
服务器如何以域用户登录 浏览:602
安卓os14怎么默认桌面 浏览:549
应用市场下载在哪个文件夹 浏览:895
安卓上的谷歌地图怎么用 浏览:183
安卓命令行打包 浏览:516
编程文字与数字教学视频 浏览:817
如何看手机号码注册哪些app 浏览:413
linux查看总内存 浏览:852
python进程间共享 浏览:438
js如何获取本地服务器地址 浏览:70
gfx什么时候支持安卓十一系统 浏览:941
压缩机90兆帕 浏览:930
程序员调侃语句 浏览:581
不是php函数的是 浏览:1000
压缩文件好处 浏览:785
3d266期神童三胆计算法 浏览:189
通过爱思助手怎么下载app 浏览:323
vi命令将文件创在桌面上 浏览:925
程序员做竞价 浏览:698