tft8.c

来自「8色TFT驱动程序」· C语言 代码 · 共 369 行 · 第 1/2 页

C
369
字号

0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,

0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,

};
 
	int code Data[160]=
{

0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11  
,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,

0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66  
,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66,

0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55  
,0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55,

0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44  
,0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,

0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x33  
,0x33,0x33,0x33,0x33,0x33,0x33,0x33,0x33,

0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22  
,0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22,

0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11  
,0x11,0x11,0x11,0x11,0x11,0x11,0x11,0x11,

0x77,0x77,0x77,0x77,0x77,0x77,0x77,0x77  
,0x77,0x77,0x77,0x77,0x77,0x77,0x77,0x77,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00  
,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66  
,0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66,

    };

main()
{
    unsigned int TFTaddr=0xc000;
      TFTclr();
	  delay(500);
do{
   TFT_Display();
   delay(600);
   TFTclr2();
   delay(500);
   TFTclr();
   delay(800);
   TFT_Display2();
   delay(8000);
  }while(1);

}



void TFTclr(){
   int i;
   unsigned int TFTaddr=0xc000;   //addr=0xC000
           P1=0x01;
loop:
  for(i=0;i<161;i++)
        {  

	       XBYTE[TFTaddr]=0x00;
	       TFTaddr++;
        }
		TFTaddr=TFTaddr&0xff00;
		TFTaddr=TFTaddr+0x0100;
		if(TFTaddr>0xcf00)   //fb9f
		    P1++,    // ture
            TFTaddr=0xc000;
			if(P1>0x0f)
			P1=0xff;
			else goto loop;

			}



void TFT_Display2(){
   int i,j;
   unsigned int TFTaddr=0xc000;   //addr=0xC000
           P1=0x01;
loop:
  for(i=0;i<160;i++)
        {  

	       XBYTE[TFTaddr]=Data2[j];
	       TFTaddr++;
		   j++;
		   if(j>=32000)
		      j--;
        }
		TFTaddr=TFTaddr&0xff00;
		TFTaddr=TFTaddr+0x0100;

		if(TFTaddr>0xcf00)   //fb9f
		    P1++,    // ture
            TFTaddr=0xc000;
			if(P1>0x0f)
			P1=0xff,
			j=0;
			else goto loop;

			}


void TFT_Display(){
   int i;
   unsigned int TFTaddr=0xc000;   //addr=0xC000
           P1=0x01;
loop:
  for(i=0;i<161;i++)
        {  

	       XBYTE[TFTaddr]=Data[i];
	       TFTaddr++;
        }
		TFTaddr=TFTaddr&0xff00;
		TFTaddr=TFTaddr+0x0100;

		if(TFTaddr>0xcf00)   //fb9f
		    P1++,    // ture
            TFTaddr=0xc000;
			if(P1>0x0f)
			P1=0xff;
			else goto loop;

			}

void TFTclr2(){
   int i;
   unsigned int TFTaddr=0xc000;   //addr=0xC000
           P1=0xff;
loop:
  for(i=0;i<161;i++)
        {  

	       XBYTE[TFTaddr]=0x44;
	       TFTaddr++;
        }
		TFTaddr=TFTaddr&0xff00;
		TFTaddr=TFTaddr+0x0100;

		if(TFTaddr>0xcf00)   //fb9f
		    P1--,    // ture
            TFTaddr=0xc000;
			if(P1<0x01)
			P1=0xff;
			else goto loop;

			}


void delay(int time)
{
int i,j;
for(i=0;i<time;i++)
{
    for(j=0;j<300;j++){
_nop_();
}
}
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?