?? inputkey.c
字號:
#include"msp430x24x.h"
#include "delay.h"
#include "ILI9320.h"
#include "number.h"
#define DIRECTION P1DIR
#define CONTROL P1SEL
#define IN P1IN
#define KEYOUT P1OUT
/*unsigned char inputkey(void)
{
unsigned char temp;
CONTROL=0;
DIRECTION=0X0F;
KEYOUT=0x01;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(0);
else if(temp==0X20)
return(1);
else if(temp==0X40)
return(2);
else if(temp==0X80)
return(3);
else
;
}
KEYOUT=0X02;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(4);
else if(temp==0X20)
return(5);
else if(temp==0X40)
return(6);
else if(temp==0X80)
return(7);
else
;
}
KEYOUT=0X04;
temp=IN&0x0f0;
if(temp!=0)
{
if(temp==0X10)
return(8);
if(temp==0X20)
return(9);
if(temp==0X40)
return(10);
if(temp==0X80)
return(11);
}
KEYOUT=0X08;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(12);
if(temp==0X20)
return(13);
if(temp==0X40)
return(14);
if(temp==0X80)
return(15);
}
return(0xff);
}*/
unsigned char inputkey(void)
{
unsigned char temp;
CONTROL=0;
DIRECTION=0X0F;
KEYOUT=0x01;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(1);
else if(temp==0X20)
return(2);
else if(temp==0X40)
return(3);
else if(temp==0X80)
return(10);
else
;
}
KEYOUT=0X02;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(4);
else if(temp==0X20)
return(5);
else if(temp==0X40)
return(6);
else if(temp==0X80)
return(13);
else
;
}
KEYOUT=0X04;
temp=IN&0x0f0;
if(temp!=0)
{
if(temp==0X10)
return(7);
if(temp==0X20)
return(8);
if(temp==0X40)
return(9);
if(temp==0X80)
return(12);
}
KEYOUT=0X08;
temp=IN&0xf0;
if(temp!=0)
{
if(temp==0X10)
return(0);
if(temp==0X20)
return(14);
if(temp==0X40)
return(15);
if(temp==0X80)
return(11);
}
return(0xff);
}
unsigned char get_key(void)
{
unsigned char key_flag1;
unsigned char key_flag2;
key_flag1=inputkey();
delay_nms(50);
key_flag2=inputkey();
if((key_flag1==key_flag2)&&((key_flag1>=0)&&(key_flag1<=15)))
{
return key_flag1;
}
else
return 0xff;
}
unsigned char scan_big_number(unsigned char x,unsigned int y,unsigned char num,unsigned int front,unsigned int back,unsigned char temp)
{
unsigned char x1;
unsigned int y1;
unsigned char key;
unsigned char i;
i=num;
x1=x+(i*16);
y1=y;
if(temp==0)
{
LCD_Write_Number_SD(x1,y1,32,32,big_0,front,back);
_NOP();
_NOP();
key=0;
}
else if(temp==1)
{
LCD_Write_Number_SD(x1,y1,32,32,big_1,front,back);
_NOP();
_NOP();
key=1;
}
else if(temp==2)
{
LCD_Write_Number_SD(x1,y1,32,32,big_2,front,back);
_NOP();
_NOP();
key=2;
}
else if(temp==3)
{
LCD_Write_Number_SD(x1,y1,32,32,big_3,front,back);
_NOP();
_NOP();
key=3;
}
else if(temp==4)
{
LCD_Write_Number_SD(x1,y1,32,32,big_4,front,back);
_NOP();
_NOP();
key=4;
}
else if(temp==5)
{
LCD_Write_Number_SD(x1,y1,32,32,big_5,front,back);
_NOP();
_NOP();
key=5;
}
else if(temp==6)
{
LCD_Write_Number_SD(x1,y1,32,32,big_6,front,back);
_NOP();
_NOP();
key=6;
}
else if(temp==7)
{
LCD_Write_Number_SD(x1,y1,32,32,big_7,front,back);
_NOP();
_NOP();
key=7;
}
else if(temp==8)
{
LCD_Write_Number_SD(x1,y1,32,32,big_8,front,back);
_NOP();
_NOP();
key=8;
}
else if(temp==9)
{
LCD_Write_Number_SD(x1,y1,32,32,big_9,front,back);
_NOP();
_NOP();
key=9;
}
else
key=0xff;
return(key);
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -