久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

標題: 單片機矩陣鍵盤掃描函數(shù) 參考就行 [打印本頁]

作者: 金是對    時間: 2021-6-22 16:05
標題: 單片機矩陣鍵盤掃描函數(shù) 參考就行
void IO_KeyScan(void)
{
u8 j;
j = IO_KeyState1; //保存上一次狀態(tài)
P7 = 0xf0; //X低,讀Y
IO_KeyDelay();
IO_KeyState1 = P7 & 0xf0;
P7 = 0x0f; //Y低,讀X
IO_KeyDelay();
IO_KeyState1 |= (P7 & 0x0f);
IO_KeyState1 ^= 0xff; //取反
if(j == IO_KeyState1) //連續(xù)兩次讀相等
{
j = IO_KeyState;
IO_KeyState = IO_KeyState1;
if(IO_KeyState != 0) //有鍵按下
{
F0 = 0;
if(j == 0) F0 = 1; //第一次按下
else if(j == IO_KeyState)
{
if(++IO_KeyHoldCnt >= 20) //1秒后重鍵
{
IO_KeyHoldCnt = 18;
28
F0 = 1;
}
}
if(F0)
{
j = T_KeyTable[IO_KeyState >> 4];
if((j != 0) && (T_KeyTable[IO_KeyState& 0x0f] != 0))
{
KeyCode = (u8)(((j - 1) * 4 )+ (T_KeyTable[IO_KeyState &
0x0f]) ); //計算鍵碼,17~32 + 16
}
}
}
else IO_KeyHoldCnt = 0;
}
P7 = 0xff;
}






2、主函數(shù)
void main(void)
{
IO_init(); //IO口初始化
LCD_Init();//液晶屏初始化
delay1ms(10);
LCD_Clear(WHITE);//清屏白底
UartInit(); //串口初始化
UartSendStr("按鍵測試\r\n");
KeyCode = 0; //給用戶使用的鍵碼, 1~16有效
IO_KeyState = 0;
IO_KeyState1 = 0;
IO_KeyHoldCnt = 0;
Gui_StrCenter(0,16,RED,BLUE,"KEY 測試程序",16,1);//居中顯示
Show_Str(20,56,BLUE,YELLOW,"KeyCode:",16,0);
//循環(huán)
while(1)
{
IO_KeyScan();
if(KeyCode>0)
{
UartSendStr("pressed");
LCD_ShowNum(100,56,KeyCode,2,16);
}
KeyCode=0;
delay1ms(100);
}
}





歡迎光臨 (http://www.zg4o1577.cn/bbs/) Powered by Discuz! X3.1
主站蜘蛛池模板: 午夜精品久久久久久久久久久久 | 日韩视频一区二区三区 | 亚洲毛片在线 | 可以在线观看av的网站 | 日韩成人在线视频 | 成人免费精品 | zzzwww在线看片免费 | 亚洲成人av一区二区 | 一区二区免费看 | 国产一级视频在线观看 | 午夜久久久 | 91精品国产91久久久久久吃药 | 国产成人免费视频网站视频社区 | 国产精品一区二区三区久久 | 国产免费福利 | 高清亚洲 | aaa天堂| 亚洲www啪成人一区二区麻豆 | 一区二区三区成人 | 成人国产精品久久 | 欧美在线视频不卡 | 在线日韩福利 | 黄片毛片在线观看 | 成人二区 | aaaaaaa片毛片免费观看 | 国产91精品网站 | 在线看av网址 | 亚洲一区 中文字幕 | 国产精品99一区二区 | 国产成人福利在线 | 欧美性生交大片免费 | 自拍偷拍一区二区三区 | 国产黄色网 | 日韩福利在线观看 | 欧美日韩不卡合集视频 | 精品久久一区 | 久久免费视频1 | 精品日韩一区二区 | 一二区成人影院电影网 | 欧美色偷拍| 99亚洲精品 |