?? functions.c
字號:
#include"SPCE061A.h"
////////////////////////////////////////////////////////////////////////////////////////////////////////
//
// 4X4鍵盤掃描測試程序
//
////////////////////////////////////////////////////////////////////////////////////////////////////////
int key;
const int LED7CODE[16]={//七段碼編碼(待定)
0x3F00, // 0
0x0600, // 1
0x5B00, // 2
0x4F00, // 3
0x6600, // 4
0x6D00, // 5
0x7D00, // 6
0x0700, // 7
0x7F00, // 8
0x6F00, // 9
0x7700, // A
0x7C00, // B
0x3900, // C
0x5E00, // D
0x7900, // E
0x7100 // F
};
void delay(int i);
void key_scan()
{//鍵盤掃描程序。。。。
key=-1;
*P_IOA_Data = 0x00f0;
if((*P_IOA_Data & 0x00f0)==0x00f0)return;//如果沒有鍵按下,退出程序key_scan
//如果有鍵按下了,,,,,
delay(100);
//掃描第一行,
*P_IOA_Data=0x00fe;
switch(*P_IOA_Data&0x00f0)
{
case 0x0070:key=0;break;
case 0x00b0:key=1;break;
case 0x00d0:key=2;break;
case 0x00e0:key=3;break;
}
if(key>=0)return;
//掃描第二行,
*P_IOA_Data=0x00fd;
switch(*P_IOA_Data&0x00f0)
{
case 0x0070:key=4;break;
case 0x00b0:key=5;break;
case 0x00d0:key=6;break;
case 0x00e0:key=7;break;
}
if(key>=0)return;
//掃描第三行,
*P_IOA_Data=0x00fb;
switch(*P_IOA_Data&0x00f0)
{
case 0x0070:key=8;break;
case 0x00b0:key=9;break;
case 0x00d0:key=10;break;
case 0x00e0:key=11;break;
}
if(key>=0)return;
//掃描第四行,
*P_IOA_Data=0x00f7;
switch(*P_IOA_Data&0x00f0)
{
case 0x0070:key=12;break;
case 0x00b0:key=13;break;
case 0x00d0:key=14;break;
case 0x00e0:key=15;break;
}
}
////////////////////////////
void key_display()
{
*P_IOA_Data=LED7CODE[key];
}
void delay(int i)
{
while(i--)*P_Watchdog_Clear=1;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -