欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機按鍵程序調試
[打印本頁]
作者:
xnysfh
時間:
2023-6-29 10:02
標題:
單片機按鍵程序調試
unsigned char code KeyCodeMap[4][4] = { //矩陣按鍵編號到標準鍵盤鍵碼的映射表
{ '1', '2', '3', 0x26 }, //數字鍵1、數字鍵2、數字鍵3、向上鍵
{ '4', '5', '6', 0x25 }, //數字鍵4、數字鍵5、數字鍵6、向左鍵
{ '7', '8', '9', 0x28 }, //數字鍵7、數字鍵8、數字鍵9、向下鍵
{ '0', 0x1B, 0x0D, 0x27 } //數字鍵0、ESC鍵、 回車鍵、 向右鍵
};
void KeyAction(unsigned char keycode)
{
if ((keycode>='0') && (keycode<='9')) //輸入字符
{
NumKeyAction(keycode - '0');
}
else if (keycode == 0x26) //向上鍵,+
{
OprtKeyAction(0);
}
else if (keycode == 0x0D) //回車鍵,計算結果
{
GetResult();
}
else if (keycode == 0x1B) //Esc鍵,清除
{
Reset();
LcdShowStr(15, 1, "0");
}
}
問:在LCD上可以直接
keycode - '0'得出想要的數嗎,為什么要用字符,不用0x26 的格式
作者:
飛云居士
時間:
2023-6-29 10:18
‘0’表示ascii碼字符,其二進制數是0x30.而0x26(上箭頭)沒有方便的ascii碼字符,所以,用二進制數。當然,前面的‘0’,你可以改用0x30.功能一樣
作者:
Hephaestus
時間:
2023-6-29 10:22
很多余,讀鍵盤程序轉成ASCII碼,在顯示程序里面又要keycode - '0'得出想要的數,不如這樣:
unsigned char code KeyCodeMap[4][4] = { //矩陣按鍵編號到標準鍵盤鍵碼的映射表
{ 1, 2, 3, 0x26 }, //數字鍵1、數字鍵2、數字鍵3、向上鍵
{ 4, 5, 6, 0x25 }, //數字鍵4、數字鍵5、數字鍵6、向左鍵
{ 7, 8, 9, 0x28 }, //數字鍵7、數字鍵8、數字鍵9、向下鍵
{ 0, 0x1B, 0x0D, 0x27 } //數字鍵0、ESC鍵、 回車鍵、 向右鍵
復制代碼
就不用keycode - '0',直接拿keycode就能用。
作者:
liujia21
時間:
2023-6-29 10:22
0’表示ascii碼字符,直接減去48也可以
作者:
qq352133
時間:
2023-6-29 21:36
用0x26要轉格式
作者:
dwping
時間:
2023-7-1 21:16
在給定的代碼中,keycode - '0'是用于將字符型的按鍵編號轉換為相應的數字。這是因為在KeyCodeMap中,數字鍵的按鍵編號是以字符形式表示的,例如'0'、'1'、'2'等。通過將字符型的按鍵編號減去字符'0',可以得到對應的數字值。 在LCD上直接使用keycode - '0'可以得到想要的數,因為字符型的按鍵編號與相應的數字字符的ASCII碼是按照順序排列的。例如,字符'0'的ASCII碼是48,字符'1'的ASCII碼是49,以此類推。因此,將字符型的按鍵編號減去字符'0',可以得到對應的數字值。 使用字符型的按鍵編號而不是直接使用0x26的格式,可能是為了方便理解和維護代碼。使用字符形式的按鍵編號可以更直觀地表示對應的按鍵,而不需要記住每個按鍵編號的十六進制值。此外,通過使用字符型的按鍵編號,可以在代碼中添加注釋,說明每個按鍵對應的功能,提高代碼的可讀性。 總的來說,通過keycode - '0'將字符型的按鍵編號轉換為相應的數字是有效的,并且可以在LCD上直接使用。使用字符型的按鍵編號可以提高代碼的可讀性和可維護性。
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1