📄 main.c
字号:
#include "SPCE061V004.h"
#include "unspmacro.h"
#define PRECISION 6
unsigned int g_Xposition = 0,g_Yposition = 0;
unsigned int *g_Xpoint,*g_Ypoint;
//unsigned int g_PreXData,g_PreYData;
unsigned int g_Flag=0;
void Initial();
void sendData_7219(unsigned int,unsigned int);
void GetPosition(unsigned int*,unsigned int*);
void openIRQ();
//void OutputData(unsigned int tmp_XPosition[5],unsigned int tmp_YPosition[5]);
//extern unsigned int ScreenBeenTouched;
void OutputData(unsigned int tmp_Xp,unsigned int tmp_Yp);
unsigned char Touched = 0;
int main()
{
unsigned int Data = 0x0000;
unsigned int KeyCode = 0;
Initial();
g_Xpoint=&g_Xposition;
g_Ypoint=&g_Yposition;
// openIRQ();
INT_FIQ_IRQ();
// *tmp_Xposition=ReadPosition_7843(0x94);
/* GetPosition(g_Xpoint,g_Ypoint);
GetPosition(g_Xpoint,g_Ypoint);
GetPosition(g_Xpoint,g_Ypoint);
GetPosition(g_Xpoint,g_Ypoint);*/
/* Delay(1);
Delay(1);
Delay(10000);
Delay(1);
*/
/* *P_IOB_Data|=0x0004;
GetPosition(g_Xpoint,g_Ypoint);
*/
for(;;)
{
if(Touched == 0)
{
GetPosition(g_Xpoint,g_Ypoint);
if((g_Xposition!=0x0fff)&&(g_Yposition!=0x0000))
// if((g_PreXData!=g_Xposition>>PRECISION)||(g_PreYData!=g_Yposition>>PRECISION))
{
g_Xposition=g_Xposition >> PRECISION;
g_Yposition=g_Yposition >> PRECISION;
Touched = 1;
// Data = ScreenMap[g_Yposition][g_Xposition];
// *P_IOA_Data = ~Data;
OutputData(g_Xposition,g_Yposition);
}
//Touched = 0;
}
if(Touched == 1)
{
// switch(g_Xposition)
// {
// case 6:
if((g_Xposition >= 6) && (g_Xposition <= 13))
{
if((g_Yposition >= 6) && (g_Yposition <= 8))
{
KeyCode = 1;
}
else if((g_Yposition >= 9) && (g_Yposition <= 12))
{
KeyCode = 2;
}
else if((g_Yposition >= 13) && (g_Yposition <= 15))
{
KeyCode = 3;
}
else if((g_Yposition >= 16) && (g_Yposition <= 19))
{
KeyCode = 4;
}
else if((g_Yposition >= 20) && (g_Yposition <= 22))
{
KeyCode = 5;
}
else if((g_Yposition >= 23) && (g_Yposition <= 26))
{
KeyCode = 6;
}
else if((g_Yposition >= 27) && (g_Yposition <= 30))
{
KeyCode = 7;
}
else if((g_Yposition >= 31) && (g_Yposition <= 33))
{
KeyCode = 8;
}
else if((g_Yposition >= 34) && (g_Yposition <= 37))
{
KeyCode = 9;
}
else if((g_Yposition >= 38) && (g_Yposition <= 40))
{
KeyCode = 10;
}
else if((g_Yposition >= 41) && (g_Yposition <= 44))
{
KeyCode = 11;
}
else if((g_Yposition >= 45) && (g_Yposition <= 48))
{
KeyCode = 12;
}
else if((g_Yposition >= 49) && (g_Yposition <= 52))
{
KeyCode = 13;
}
else if((g_Yposition >= 53) && (g_Yposition <= 56))
{
KeyCode = 14;
}
else
{
KeyCode = 0;
}
}
else if((g_Xposition >= 15) && (g_Xposition <= 23))
{
if((g_Yposition >= 6) && (g_Yposition <= 9))
{
KeyCode = 15;
}
else if((g_Yposition >= 10) && (g_Yposition <= 13))
{
KeyCode = 16;
}
else if((g_Yposition >= 14) && (g_Yposition <= 16))
{
KeyCode = 17;
}
else if((g_Yposition >= 17) && (g_Yposition <= 20))
{
KeyCode = 18;
}
else if((g_Yposition >= 21) && (g_Yposition <= 24))
{
KeyCode = 19;
}
else if((g_Yposition >= 25) && (g_Yposition <= 28))
{
KeyCode = 20;
}
else if((g_Yposition >= 29) && (g_Yposition <= 31))
{
KeyCode = 21;
}
else if((g_Yposition >= 32) && (g_Yposition <= 35))
{
KeyCode = 22;
}
else if((g_Yposition >= 36) && (g_Yposition <= 39))
{
KeyCode = 23;
}
else if((g_Yposition >= 40) && (g_Yposition <= 43))
{
KeyCode = 24;
}
else if((g_Yposition >= 44) && (g_Yposition <= 46))
{
KeyCode = 25;
}
else if((g_Yposition >= 47) && (g_Yposition <= 50))
{
KeyCode = 26;
}
else if((g_Yposition >= 51) && (g_Yposition <= 54))
{
KeyCode = 27;
}
else if((g_Yposition >= 55) && (g_Yposition <= 56))
{
KeyCode = 28;
}
else
{
KeyCode = 0;
}
}
else if((g_Xposition >= 25) && (g_Xposition <= 33))
{
if((g_Yposition >= 6) && (g_Yposition <= 10))
{
KeyCode = 29;
}
else if((g_Yposition >= 11) && (g_Yposition <= 14))
{
KeyCode = 30;
}
else if((g_Yposition >= 15) && (g_Yposition <= 17))
{
KeyCode = 31;
}
else if((g_Yposition >= 18) && (g_Yposition <= 21))
{
KeyCode = 32;
}
else if((g_Yposition >= 22) && (g_Yposition <= 25))
{
KeyCode = 33;
}
else if((g_Yposition >= 26) && (g_Yposition <= 29))
{
KeyCode = 34;
}
else if((g_Yposition >= 30) && (g_Yposition <= 32))
{
KeyCode = 35;
}
else if((g_Yposition >= 33) && (g_Yposition <= 36))
{
KeyCode = 36;
}
else if((g_Yposition >= 37) && (g_Yposition <= 40))
{
KeyCode = 37;
}
else if((g_Yposition >= 41) && (g_Yposition <= 43))
{
KeyCode = 38;
}
else if((g_Yposition >= 44) && (g_Yposition <= 47))
{
KeyCode = 39;
}
else if((g_Yposition >= 48) && (g_Yposition <= 51))
{
KeyCode = 40;
}
else if((g_Yposition >= 52) && (g_Yposition <= 56))
{
KeyCode = 41;
}
else
{
KeyCode = 0;
}
}
else if((g_Xposition >= 34) && (g_Xposition <= 43))
{
if((g_Yposition >= 6) && (g_Yposition <= 12))
{
KeyCode = 42;
}
else if((g_Yposition >= 13) && (g_Yposition <= 16))
{
KeyCode = 43;
}
else if((g_Yposition >= 17) && (g_Yposition <= 20))
{
KeyCode = 44;
}
else if((g_Yposition >= 21) && (g_Yposition <= 24))
{
KeyCode = 45;
}
else if((g_Yposition >= 25) && (g_Yposition <= 27))
{
KeyCode = 46;
}
else if((g_Yposition >= 28) && (g_Yposition <= 31))
{
KeyCode = 47;
}
else if((g_Yposition >= 32) && (g_Yposition <= 35))
{
KeyCode = 48;
}
else if((g_Yposition >= 36) && (g_Yposition <= 39))
{
KeyCode = 49;
}
else if((g_Yposition >= 40) && (g_Yposition <= 42))
{
KeyCode = 50;
}
else if((g_Yposition >= 43) && (g_Yposition <= 46))
{
KeyCode = 51;
}
else if((g_Yposition >= 47) && (g_Yposition <= 50))
{
KeyCode = 52;
}
else if((g_Yposition >= 51) && (g_Yposition <= 54))
{
KeyCode = 53;
}
else if((g_Yposition >= 55) && (g_Yposition <= 56))
{
KeyCode = 54;
}
else
{
KeyCode = 0;
}
}
else if((g_Xposition >= 45) && (g_Xposition <= 51))
{
if((g_Yposition >= 6) && (g_Yposition <= 9))
{
KeyCode = 55;
}
else if((g_Yposition >= 13) && (g_Yposition <= 18))
{
KeyCode = 56;
}
else if((g_Yposition >= 19) && (g_Yposition <= 45))
{
KeyCode = 57;
}
else if((g_Yposition >= 46) && (g_Yposition <= 48))
{
KeyCode = 58;
}
else if((g_Yposition >= 49) && (g_Yposition <= 51))
{
KeyCode = 59;
}
else if((g_Yposition >= 52) && (g_Yposition <= 56))
{
KeyCode = 60;
}
else
{
KeyCode = 0;
}
}
else
{
KeyCode = 0;
}
}
*P_Watchdog_Clear=0x0001;
}
}
//void OutputData(unsigned int tmp_XPosition[5],unsigned int tmp_YPosition[5])
void OutputData(unsigned int tmp_Xp,unsigned int tmp_Yp)
{
int i;
unsigned int tmp_X[4],tmp_Y[4];
// unsigned int tmp_Xp,tmp_Yp;
//unsigned int tmp_Xposition,tmp_Yposition;
/*for(i=0,tmp_Xposition=0;i<5;i++)
{
tmp_Xposition+=tmp_XPosition[i];
}
tmp_Xposition/=5;
for(i=0,tmp_Yposition=0;i<5;i++)
{
tmp_Yposition+=tmp_YPosition[i];
}
tmp_Yposition/=5; */
/*tmp_Xp=tmp_Xposition/4.0/1024.0*10000;
tmp_Yp=tmp_Yposition/4.0/1024.0*10000;
*/
// tmp_Xp=tmp_XPosition[1];///4.0/1024.0*10000;
// tmp_Yp=tmp_YPosition[1];///4.0/1024.0*10000;
for(i=0;i<4;i++)
{
tmp_X[i]=tmp_Xp%10;
tmp_Xp/=10;
}
for(i=0;i<4;i++)
{
tmp_Y[i]=tmp_Yp%10;
tmp_Yp/=10;
}
for(i=0;i<4;i++)
{
sendData_7219(1+i,tmp_X[i]);
}
for(i=0;i<4;i++)
{
sendData_7219(5+i,tmp_Y[i]);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -