📄 7843_tp_test.c
字号:
//////////////TP TEST START///////////////
//Setting & enable external interrupt 0
IT0=0;
EX0=1;
EA=1;
disp_Data(Black);
disp_Data(White);
disp_Data(Black);
n=1;
while(n==1)
{
if(!OTP_DEC)
{n=0;
}
}
EA=0;
///////////////TP TEST END///////////
///////////// TP test function/////////////
void int1(void) interrupt 0
{
DelayX1us(700);
ADS7843_start();
WriteCharTo7843(0x90);
DCLK=1;
DCLK=0;
YTP=ReadFromCharFrom7843();
WriteCharTo7843(0xD0);
DCLK=1;
DCLK=0;
XTP=ReadFromCharFrom7843();
ADS7843_CS=1;
/////////////////////////
XTP1= (XTP-250)*240;
XLCD= XTP1/3500; //触摸点X坐标
YTP1= (YTP-100)*320;
YLCD= YTP1/3500-20; //触摸点Y坐标
//////////////////////// //touch point address set
writec(0x0020); // Set start address
Location=XLCD;
writer(Location); // (P2) row address (MSB)
writec(0x0021); // Set start address
Location=YLCD;
writer(Location); // (P2) row address (MSB)
//////////////////////// //
writec(0x0022);
WR_DATA(Red);
}
//Functions of Touch panel
void ADS7843_start() //SPI开始
{
DCLK=0;
ADS7843_CS=1;
DIN=1;
DCLK=1;
ADS7843_CS=0;
}
void WriteCharTo7843(BYTE num) //SPI写数据
{
BYTE count=0;
DCLK=0;
for(count=0;count<8;count++)
{
num<<=1;
DIN=CY;
DCLK=0;
DCLK=1;
}
}
LONG ReadFromCharFrom7843() //SPI 读数据
{
BYTE count=0;
WORD Num=0;
for(count=0;count<12;count++) //ADC BIT
{
Num<<=1;
DCLK=1;
DCLK=0;
if(DOUT) Num++;
}
return(Num);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -