📄 说明.txt
字号:
将P1口8脚分别和J13,J14用导线相连接!
本实验简要的阐明了4*4行列式键盘的工作原理,大家肯定见过银行柜员机吧,取钱输入密码就要用到键盘,超市购物取回寄存物品要输入密码,还有你现在在用的PC机的键盘。但是键盘的是怎么工作的呢?一般有2种方式:(1)扫描法,不断扫描键盘的状态,送CPU判断并处理。如果键盘数目一大的话,显然不适合。
在P1口接个4*4的键盘,P1.0--P1.3接行,P1.4---P1.7接列,再接4个4K7或者10K的上拉电阻至VCC。
(2)线反转法,通过行列状态的改变来判断有无键被按下!
实现如下:
1.和扫描法相同,把列线置低电平,行置高,读行状态
2.与1相反,把行置低,列置高,读列状态
3.若有键按下,则为2次所读状态的结果即为键所在的位置,这样2次输出和2次读入可以完成键的识别!!!
子函数如下:
unsigned char key_vscan(void)
{
unsigned char row, col;
P1 = 0xF0;
row = P1&0xF0;
row = row&0xF0;
P1 = 0x0F;
col = P1&0x0F;
col = col&0x0F;
return(key_val(row|col));
}
下面我们再来介绍介绍一键多能的程序,即按下一个键,可以执行不同的命令!
void main (void)
{
unsigned char b = 0;
while( 1 )
{
if(P1_0 == 0)
{
Delay(10);
if(P1_0 == 0)
{
b++;
if( b == N )//N为键的功能数目
{
b = 0;
}
while(P3_2 == 0);//等待键松开
}
}
switch( b )
{
case 1: P2_0 = 0xFE;
break;
case 2: P2_1 = 0xfd;
//..............add your code here!
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -