?? 4x4.txt
字號:
#include <reg51.h>
#define uchar unsigned char
#define uint unsigned int
Void dlms(void);
Uchar kbscan(void); /*函數說明*/
Void main(void)
{
Uchar key;
While(l)
{
Key=kbscan(); /*鍵盤掃描函數,返回鍵碼送至key保存 */
dlms()
}
}
void dlms(void) /* 延時*/
{
uchar I;
for(i=200;i>0;i--)
{
}
}
uchar kbscan(void) /*鍵盤掃描函數*/
{uchar sccode,recode;
P1=0xf0;
If((P1&0xf0)!=0xf0) /*如果P1口高四位不全為1,則有鍵按下*/
{dlms(); /*延時,去抖動*/
If((P1&0xf0)!=0xf0) /*再讀輸入值*/
{sccode=0xf0 /*最低位置0*/
While((sccode&0x10)! =0) /*不到最后一行,循環*/
{P1=sccode: /*P1口輸出掃描碼*/
If((P1&0xf0)!=0xf0) /*如果P1.4~P1.7不全為1,該行有鍵按下*/
{recode=(P1&0xf0;); /*保留P1口高四位輸入值,低四位變為1,作為列值*/
Return(sccode +recode) /*行碼+列碼=鍵編碼,返回主程序*/
}
else
sccode =(sccode<<1)|0x01; /*如果該行無鍵按下,查下一行,行掃描值左移一位*/
}
}
}
Return(0); /*無鍵按下,返回值為0*/
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -