导航:首页 > 操作系统 > 单片机松手触发

单片机松手触发

发布时间:2025-06-21 14:07:17

单片机中用矩阵键盘的8个按键分别控制8个LED,当按下时亮,松手时灭,用switch语句

#include<reg51.>
#define uchar unsigned char
void delay(unsigned int a)
{
unsigned int i,j;
for(i=0;i<a;i++)
for(j=0;j<120;j++);
}
uchar kbscan(void)
{
unsigned char sccode,recode;
P1=0x0f; //发0扫描,列线输入
if ((P2 & 0x0f) != 0x0f) //有键按下
{
delay(20); //延时去抖动
if ((P1&0x0f)!= 0x0f)
{
sccode = 0xef; //逐行扫描初值
while((sccode&0x01)!=0)
{
P1=sccode;
if((P1&0x0f)!=0x0f)
{
recode=(P1&0x0f)|0xf0;
return((~sccode)+(~recode));
}
else
sccode=(sccode<<1)|0x01;
}
}
}
P0=0xff;
return 0; //无键按下,返回0
}

main()
{
unsigned char key;
while(1)
{
key=kbscan();
switch(key)
{
case 0x11:P0=0xfe;break;
case 0x12:P0=0xfd;break;
case 0x14:P0=0xfb;break;
case 0x18:P0=0xf7;break; //+
case 0x21:P0=0xef;break;
case 0x22:P0=0xdf;break;
case 0x24:P0=0xbf;break;
case 0x28:P0=0x7f;break; //-
default:break;
}
}
}

❷ c51单片机 在矩阵键盘松手检测的原理是什么为什么要加松手程序不加又会怎样谢谢!

因为单片机运行速度很快,你按下的按键瞬间,单片机就可以执行数万调指令了,如果不加任何处理,可能就会误判你的按键,如果不加松手程序,那可能会因为按键的机械问题造成的弹跳被误判成好几个按键

❸ 一个按键怎么实现两个Led灯切换,就是按下第一个灯亮松手灯灭,再按一下第二个灯亮松平灯灭。单片机C

/*
按键位置:P0.1;
功能:1,当第一次按键按下,第一个灯亮,按键放开灯灭
2,当第二次按键按下,第二个灯亮,按键放开灯灭
3,重复执行前面两个步骤
灯的位置:P2口;
*/
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
sbit BUTTON=P0^1;//按键的位置
void DELAY(uint x)
{
uchar s,j;
for(s=0;s<x;s++)
for(j=0;j<114;j++);
}
void main()
{
uint led=0;
while(1)
{
if(BUTTON==0)
{
led++;
if(led==1)//第一次按键按下
{
P2=0XFE;//1111 1110 第一个灯亮
DELAY(500);//延时
while(BUTTON!=0)//等待按键放开
{
P2=0xff;/1111 1111灯灭
DELAY(500)//延时
}

}
if(led==2)//第二次按键按下
{
led=0;//要给次数初始化
P2=0XFC;//1111 1101第二个灯亮
DELAY(500);//延时
while(BUTTON!=0)//等待按键放开
{
P2=0xff;//1111 1111第二个灯灭
DELAY(500)//延时
}

}
}
}

阅读全文

与单片机松手触发相关的资料

热点内容
对齐标注命令可以对直线进行标注 浏览:147
oppo怎么用拨号加密 浏览:628
电脑加密后怎么注销账号 浏览:352
华为8x怎么加密照片 浏览:270
详细设计文档程序员写吗 浏览:957
外卖老哥解压视频 浏览:91
手机谷歌无法连接服务器地址 浏览:361
半挂车空调压缩机什么牌子好 浏览:755
pdf情书 浏览:496
app后台如何进行管理 浏览:344
塑料文件夹diy钥匙包 浏览:116
求生之路服务器下载地址 浏览:205
钉钉加密最新消息 浏览:203
坏男人pdf 浏览:12
nas文件夹高级权限已停用 浏览:16
服务器怎么导入本机库 浏览:894
编译器的程序员 浏览:588
华为中文程序员 浏览:923
程序员天天被催干活 浏览:48
电信服务器ip地址怎么填写 浏览:453