📄 lcd.c
字号:
if (pTXdata->dengji>_02s)pTXdata->dengji=_02s;
P_Input->Udata.SwitchData.MaxNumber=7;
P_Input->Udata.SwitchData.len=9;
P_Input->Udata.SwitchData.High=HIGH24;
P_Input->Udata.SwitchData.Number=&pTXdata->dengji;
for (i=0;i<P_Input->Udata.SwitchData.MaxNumber;i++) StrCpy(&Dengji[i][0],&P_Input->Udata.SwitchData.Data[i][0],10);
P_Input++;
P_Input->x=310;P_Input->y=128;P_Input->w=114;P_Input->h=28;P_Input->nDataType=TypeFloat;P_Input->nInputStrLen=0x302;
P_Input->Udata.F_data=&pTXdata->gonglvyingshu;
P_Input++;
P_Input->x=461;P_Input->y=276;P_Input->w=123;P_Input->h=37;P_Input->nDataType=TypePage;P_Input->nPageNo=4;
P_Input++;
P_Input->x=461;P_Input->y=321;P_Input->w=123;P_Input->h=37;P_Input->nDataType=TypePage;P_Input->nPageNo=4;
P_Input++;
P_Input->x=461;P_Input->y=367;P_Input->w=123;P_Input->h=37;P_Input->nDataType=TypeSave;P_Input->nPageNo=4;
P_Input++;
P_Input->x=461;P_Input->y=412;P_Input->w=123;P_Input->h=37;P_Input->nDataType=TypePage;P_Input->nPageNo=1;
P_P->x=337;P_P->y=385;P_P->w=64;P_P->h=34;P_P->datax=P_P->x;P_P->datay=P_P->y;
P_P->nDataType=TypeSwitch;
if (pRXdata->HG_BHG>2)pRXdata->HG_BHG=0;
P_P->Udata.SwitchData.MaxNumber=3;
P_P->Udata.SwitchData.High=HIGH24B;
P_P->Udata.SwitchData.len=2;
P_P->Udata.SwitchData.Number=&pRXdata->HG_BHG;
for (i=0;i<P_P->Udata.SwitchData.MaxNumber;i++) StrCpy(&HeGe_Y_N24[i][0],&P_P->Udata.SwitchData.Data[i][0],10);
P_P++;
P_P->x=404;P_P->y=5;P_P->w=39;P_P->h=28;P_P->datax=P_P->x;P_P->datay=P_P->y;
P_P->nDataType=TypeSwitch;
if (pRXdata->JXZS>3)pRXdata->JXZS=0;
P_P->Udata.SwitchData.MaxNumber=4;
P_P->Udata.SwitchData.High=HIGH32B;
P_P->Udata.SwitchData.len=5;
P_P->Udata.SwitchData.Number=&pRXdata->JXZS;
for (i=0;i<P_P->Udata.SwitchData.MaxNumber;i++) StrCpy(&JXCW_B_J[i][0],&P_P->Udata.SwitchData.Data[i][0],10);
pTXdata->TXkey.nCursorPreLine=0;
pTXdata->TXkey.nCursorOldLine=0;
pTXdata->TXkey.nCursorMaxLine=12;
pTXdata->TXkey.nCursor=0;
pTXdata->TXkey.nTimeDisConst=1;
pTXdata->TXkey.nPageFatuer=1;
pTXdata->TXkey.nPageNo=4;
pTXdata->TXkey.Addr_Page=acpage4;
for (i=0,P_Input=INputdata;i<pTXdata->TXkey.nCursorMaxLine;i++,P_Input++)
{
P_Input->datax=P_Input->x+5;
P_Input->datay=P_Input->y+2;
P_Input->nHigh=HIGH24;
}
P_Input=INputdata;
Lcd_G4_Bmp_All(pTXdata->TXkey.Addr_Page,InvertOFF ) ;
Lcd_G4_Bmp_Rev(P_Input->x,P_Input->y,P_Input->w,P_Input->h,Gray1);
Touch_X=0; Touch_Y=0;
keyd2=0xff;
pppr=0;
Serial=pTXdata->TXkey.nSerial;
while(1)
{
P_Input=INputdata;
Data_ReFlash(P_Input,pTXdata->TXkey.nPageNo);
P_P=XiangBie;
Re_Flash(P_P);
P_P=XiangBie+1;
Re_Flash(P_P);
if (pTXdata->TXkey.nPageNo!=4) return pTXdata->TXkey.nPageNo;
OutFloat(&pRXdata->bicha,449,67,InvertOFF,Gray3,HIGH32,pRXdata->weishubicha);
OutFloat(&pRXdata->jiaocha,449,117,InvertOFF,Gray3,HIGH32,pRXdata->weishubicha);
OutFloat(&pRXdata->baifenbiao,462,160,InvertOFF,Gray3,HIGH32,0x0403);
OutFloat(&pRXdata->ZK,452,213,InvertOFF,Gray3,HIGH32,0x0403);
/*OutFloat(&pRXdata->SJVA,452,220,InvertOFF,Gray3,HIGH32,0x0403);*/
for (i=0;i++;i<NN)if (pRXdata->Over[i]>3)pRXdata->Over[i]=0;
yy=203;
if (pTXdata->dengji>_01)i=0;else i=1;
for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->bichaceliang[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0404);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->bichahz[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0403);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
if(pTXdata->dengji==2)for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->jiaochaceliang[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0403);
else for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->jiaochaceliang[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0302);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
if(pTXdata->dengji==2)for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->jiaochahz[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0302);
else for (xx=76+i*65;i<5;xx+=65,i++)OutFloat(&pRXdata->jiaochahz[i],xx,yy,pRXdata->Over[i],Gray3,HIGH24,0x0200);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->bichaceliang[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0404);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->bichahz[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0403);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
if(pTXdata->dengji==2)for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->jiaochaceliang[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0403);
else for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->jiaochaceliang[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0302);
yy+=31;if (pTXdata->dengji>_01)i=0;else i=1;
if(pTXdata->dengji==2)for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->jiaochahz[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0302);
else for (xx=76+i*65;i<4;xx+=65,i++)OutFloat(&pRXdata->jiaochahz[i+6],xx,yy,pRXdata->Over[i+6],Gray3,HIGH24,0x0200);
if (pTXdata->TXkey.nkey==KEY_OK && Serial!=pTXdata->TXkey.nSerial && pTXdata->TXkey.nCursorPreLine==9)
{
PrintPage();
Serial=pTXdata->TXkey.nSerial;
}
Delay(50);
}
return i;
}
U8 Page5(void)/*导纳测试*/
{
int i=0;
StructInputData INputdata[7],*P_Input=&INputdata[0];
StructInputData XiangBie[1],*P_P=&XiangBie[0];
pTXdata->ptctyz=_QB_Y;
P_Input->x=104;P_Input->y=47;P_Input->w=114;P_Input->h=28;P_Input->nDataType=TypeStr;P_Input->nInputStrLen=0x800;
P_Input->Udata.U8_data=&pTXdata->CeShiRenY[0];
P_Input++;
P_Input->x=312;P_Input->y=47;P_Input->w=114;P_Input->h=28;P_Input->nDataType=TypeStr;P_Input->nInputStrLen=0x800;
P_Input->Udata.U8_data=&pTXdata->CeShiXL[0];
P_Input++;
P_Input->x=541;P_Input->y=47;P_Input->w=50;P_Input->h=28;P_Input->datax=P_Input->x;P_Input->datay=P_Input->y;
P_Input->nDataType=TypeSwitch;
if (pTXdata->DENGJI2>_30 )pTXdata->DENGJI2=_30;
P_Input->Udata.SwitchData.MaxNumber=1;
P_Input->Udata.SwitchData.len=9;
P_Input->Udata.SwitchData.High=HIGH24;
P_Input->Udata.SwitchData.Number=&pTXdata->DENGJI2;
for (i=0;i<P_Input->Udata.SwitchData.MaxNumber;i++) StrCpy(&DENGJI3[i][0],&P_Input->Udata.SwitchData.Data[i][0],10);
P_Input++;
P_Input->x=139;P_Input->y=75;P_Input->w=114;P_Input->h=28;P_Input->datax=P_Input->x;P_Input->datay=P_Input->y;
P_Input->nDataType=TypeSwitch;
if (pTXdata->ercidy>_33)pTXdata->ercidy=_33;
P_Input->Udata.SwitchData.MaxNumber=3;
P_Input->Udata.SwitchData.High=HIGH24;
P_Input->Udata.SwitchData.len=6;
P_Input->Udata.SwitchData.Number=&pTXdata->ercidy;
for (i=0;i<P_Input->Udata.SwitchData.MaxNumber;i++) StrCpy(&ECDY_123[i][0],&P_Input->Udata.SwitchData.Data[i][0],10);
P_Input++;
P_Input->x=336;P_Input->y=75;P_Input->w=114;P_Input->h=28;P_Input->nDataType=TypeFloat;P_Input->nInputStrLen=0x403;
P_Input->Udata.F_data=&pTXdata->edingercifh;
P_Input++;
P_Input->x=515;P_Input->y=75;P_Input->w=114;P_Input->h=28;P_Input->nDataType=TypeFloat;P_Input->nInputStrLen=0x302;
P_Input->Udata.F_data=&pTXdata->gonglvyingshu;
P_Input++;
P_Input->x=469;P_Input->y=412;P_Input->w=119;P_Input->h=36;P_Input->nDataType=TypePage;P_Input->nPageNo=2;
P_P->x=129;P_P->y=14;P_P->w=39;P_P->h=28;P_P->datax=P_P->x+5;P_P->datay=P_P->y;
P_P->nDataType=TypeSwitch;
P_P->Udata.SwitchData.MaxNumber=5;
P_P->Udata.SwitchData.High=HIGH24;
P_P->Udata.SwitchData.len=2;
P_P->Udata.SwitchData.Number=&pTXdata->xiangbie;
for (i=0;i<P_P->Udata.SwitchData.MaxNumber;i++) StrCpy(&XiangbieZK[i][0],&P_P->Udata.SwitchData.Data[i][0],10);
pTXdata->TXkey.nCursorPreLine=0;
pTXdata->TXkey.nCursorOldLine=0;
pTXdata->TXkey.nCursorMaxLine=7;
pTXdata->TXkey.nCursor=0;
pTXdata->TXkey.nTimeDisConst=1;
pTXdata->TXkey.nPageFatuer=2;
pTXdata->TXkey.nPageNo=5;
pTXdata->TXkey.Addr_Page=acpage5;
for (i=0,P_Input=INputdata;i<pTXdata->TXkey.nCursorMaxLine;i++,P_Input++)
{
P_Input->datax=P_Input->x+5;
P_Input->datay=P_Input->y+2;
P_Input->nHigh=HIGH24;
}
P_Input=INputdata;
Lcd_G4_Bmp_All(pTXdata->TXkey.Addr_Page,InvertOFF ) ;
Lcd_G4_Bmp_Rev(P_Input->x,P_Input->y,P_Input->w,P_Input->h,Gray1);
Touch_X=0; Touch_Y=0;
keyd2=0xff;
while(1)
{
P_Input=INputdata;
Data_ReFlash(P_Input,pTXdata->TXkey.nPageNo);
P_P=XiangBie;
Re_Flash(P_P);
if (pTXdata->TXkey.nPageNo!=5) return pTXdata->TXkey.nPageNo;
OutFloat(&pRXdata->bicha,67,129,InvertOFF,Gray3,HIGH32,pRXdata->weishubicha);
OutFloat(&pRXdata->jiaocha,67,183,InvertOFF,Gray3,HIGH32,pRXdata->weishujiaocha);
OutFloat(&pRXdata->ZK,67,243,InvertOFF,Gray3,HIGH32,pRXdata->weishubicha);
OutFloat(&pRXdata->angleb,410,181,InvertOFF,Gray3,HIGH32,0x0402);
OutFloat(&pRXdata->cosf,457,132,InvertOFF,Gray3,HIGH32,0x0403);
OutFloat(&pRXdata->SJVA,424,242,InvertOFF,Gray3,HIGH32,0x0403);
Delay(50);
}
return i;
}
void Test_LcdG4(void)
{
int i,j;
Lcd_Init(MODE_G4);
LCD_DispON();
Glib_Init(MODE_G4);
Slib_ClearScr();
Slib_SetCursor(0,0);
SaveD1.TXd.TXkey.nPageNo=0;
for( j = 0; j < LCD_YSIZE; j += 32 )
for( i = 0; i < LCD_XSIZE; i += 32 )
Glib_FilledRectangle( i, j, i+31, j+31, ((j+i)/32)%4 );
Delay(100);
Lcd_G4_Bmp_All( acmainpage0,InvertON ) ;
Slib_SetCursor(0,0);
Lcd_Timer=0;
Touch_X=0; Touch_Y=0;
keyd2=0xff;
SaveD1.TXd.ptctyz=_YJ;
SaveD1.TXd.xiangbie=_cb;
NF_Data_GetTXd(0,(U8 *)&SaveD1.TXd);
NF_Data_GetTXd(0,(U8 *)&TTXXddB);
NF_Data_GetNum(1010,(U8 *)&NumberSave);
if (NumberSave.CunChuNo>=1000 || NumberSave.CunChuNoMAX>=1000 ){NumberSave.CunChuNo=0;NumberSave.CunChuNoMAX=0; NF_Data_SaveNum(1010);}
if (NumberSave.CunChuNo>0)CunChuNo1=NumberSave.CunChuNo-1;
else if (NumberSave.CunChuNo==0 && NumberSave.CunChuNoMAX==0)CunChuNo1=NumberSave.CunChuNo;
else if (NumberSave.CunChuNo==0 && NumberSave.CunChuNoMAX!=0)CunChuNo1=NumberSave.CunChuNoMAX;
NF_Data_GetD1(CunChuNo1,(U8 *)&GetD1);
LightAdj((unsigned int)SaveD1.TXd.led);
for(;;)
{
if ((Touch_X!=0) || (Touch_Y!=0)) break;
if (keyd2!=0xff) {keyd2=0xff;break;}
Delay(10);
if (Lcd_Timer>10000)break;
}
}
//***************************************************************************
/****************************************************************************
【功能说明】
****************************************************************************/
void MoveViewPort(int depth)
{
int vx=0,vy=0,vd;
//vd=(depth==1)*16+(depth==4)*8+(depth==16)*4+(depth==256)*2;
vd = 1 ;
while(1)
{
switch(getchar())
{
case 'i':
if(vy>=vd)vy-=vd;
break;
case 'j':
if(vx>=vd)vx-=vd;
break;
case 'k':
if(vx<=SCR_XSIZE-LCD_XSIZE-vd)vx+=vd;
break;
case 'm':
if(vy<=(SCR_YSIZE-LCD_YSIZE-vd))vy+=vd;
break;
case '\r':
return;
default:
break;
}
printf("vx=%3d,vy=%3d\n",vx,vy);
Lcd_MoveViewPort(vx,vy,depth);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -