?? jianpan.c
字號:
#include<msp430x44x.h>
void delay(unsigned int i) //延時函數
{
do i--;
while(i!=0);
}
unsigned char key(void) // 判斷按鍵的鍵值
{
unsigned char x=0xff;
P1DIR=0x0F;
P1OUT=0x08; // 掃描第一行 P1.3
if((P1IN&0xF0)==0x80)
x=0;
else if((P1IN&0xF0)==0x40)
x=1;
else if((P1IN&0xF0)==0x20)
x=2;
else if((P1IN&0xF0)==0x10)
x=3;
else
{
P1OUT=0x04;
if((P1IN&0xF0)==0x80) // 掃描第二行 P1.2
x=4;
else if((P1IN&0xF0)==0x40)
x=5;
else if((P1IN&0xF0)==0x20)
x=6;
else if((P1IN&0xF0)==0x10)
x=7;
else
{
P1OUT=0X02; //掃描第三行 P1.1
if((P1IN&0xF0)==0x80)
x=8;
else if((P1IN&0xF0)==0x40)
x=9;
else if((P1IN&0xF0)==0x20)
x=10;
else if((P1IN&0xF0)==0x10)
x=11;
}
}
while(P1IN != 0x00) ; //等待按鍵松開
return(x);
}
void main(void)
{
int i=0;
unsigned char a[100];
kkk: P1DIR=0xff;
P1OUT=0x00;
P1DIR=0x0f;
P1OUT=0x0f;
if((P1IN&0xf0)!=0) //判鍵消抖動
{
delay(1000);
if((P1IN&0xf0)!=0)
{
a[i]=key(); //判斷鍵值
i++;
goto kkk;
}
}
else goto kkk;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -