欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機LCD12864和按鍵的程序問題,求大神解答一下
[打印本頁]
作者:
18879461580
時間:
2019-10-11 21:13
標題:
單片機LCD12864和按鍵的程序問題,求大神解答一下
4x4矩陣按鍵,為什么0~3(第一行的四個按鍵)的按鍵值怎么都顯示不了,剩下的12個按鍵值都能顯示,這是為什么,希望懂的大神能給分析一下,萬分感謝!
void main()
{
u8 key=0;
LCD_Init();
LCD_POS(0,0);
LCD12864_disp("請輸入");
LCD_POS(1,0);
while(1)
{
key=KeyPro();
if(key!=16)
{
LCD_Writedata(key+'0');
}
}
}
u8 Keyscanf()
{
u8 cord_l=0x0f,cord_h=0xf0;
KEY=0x0f;
if(KEY!=0x0f)
{
Delay_MS(10);
if(KEY!=0x0f)
{
cord_l=KEY&0x0f;
KEY=cord_l|0xf0;
cord_h=KEY&0xf0;
while((KEY&0xf0)!=0xf0);
}
}
return (cord_l|cord_h);
}
u8 KeyPro()
{
u8 key_value=16;
switch(Keyscanf())
{
case 0x77: key_value=0; break;
case 0x7b: key_value=1; break;
case 0x7d: key_value=2; break;
case 0x7e: key_value=3; break;
case 0xb7: key_value=4; break;
case 0xbb: key_value=5; break;
case 0xbd: key_value=6; break;
case 0xbe: key_value=7; break;
case 0xd7: key_value=8; break;
case 0xdb: key_value=9; break;
case 0xdd: key_value=10; break;
case 0xde: key_value=11; break;
case 0xe7: key_value=12; break;
case 0xeb: key_value=13; break;
case 0xed: key_value=14; break;
case 0xee: key_value=15; break;
}
return key_value;
}
作者:
wulin
時間:
2019-10-12 07:34
就你的矩陣按鍵程序而言沒有什么問題,其它鍵值能正常顯示說明顯示程序正常。問題可能出在硬件電路連接上,與0~3共同相關的IO口是Px.7。
作者:
18879461580
時間:
2019-10-12 13:44
wulin 發表于 2019-10-12 07:34
就你的矩陣按鍵程序而言沒有什么問題,其它鍵值能正常顯示說明顯示程序正常。問題可能出在硬件電路連接上, ...
問題解決了,十分感謝。剛開始我是將矩陣按鍵接在p1口的,怎么都顯示不了0~3這幾個鍵,聽了你的建議后我重新接在p2口上,結果就能顯示了,不知道為什么會這樣,我接在p1口的時候做動態顯示都是沒問題的呀
歡迎光臨 (http://www.raoushi.com/bbs/)
Powered by Discuz! X3.1