📄 tft-256c.c
字号:
#include "reg52.h"
#include "absacc.h"
#include "intrins.h"
void delay(int);
//void TFTdisplay();
//void TFTdisplayB();
void TFTclr();
void TFTclrB();
void TFTclr2();
void TFTclrB2();
int code Data[320]=
{
//1 T F T
0xe1,0xe1,0xe1,0xe1,0xe1,0xe1,0xe1,0xe1, 0x09,0x09,0x09,0x09,0x09,0x09,0x09,0x09, 0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66, 0xf2,0xf2,0xf2,0xf2,0xf2,0xf2,0xf2,0xf2, 0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,
0xac,0xac,0xac,0xac,0xac,0xac,0xac,0xac, 0xbb,0xbb,0xbb,0xbb,0xbb,0xbb,0xbb,0xbb, 0x2f,0x2f,0x2f,0x2f,0x2f,0x2f,0x2f,0x2f, 0xee,0xee,0xee,0xee,0xee,0xee,0xee,0xee, 0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90, 0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22, 0x49,0x49,0x49,0x49,0x49,0x49,0x49,0x49, 0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82, 0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, 0x79,0x79,0x79,0x79,0x79,0x79,0x79,0x79, 0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe, 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, 0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
0xe1,0xe1,0xe1,0xe1,0xe1,0xe1,0xe1,0xe1, 0x09,0x09,0x09,0x09,0x09,0x09,0x09,0x09, 0x66,0x66,0x66,0x66,0x66,0x66,0x66,0x66, 0xf2,0xf2,0xf2,0xf2,0xf2,0xf2,0xf2,0xf2, 0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,0x9F,
0xac,0xac,0xac,0xac,0xac,0xac,0xac,0xac, 0xbb,0xbb,0xbb,0xbb,0xbb,0xbb,0xbb,0xbb, 0x2f,0x2f,0x2f,0x2f,0x2f,0x2f,0x2f,0x2f, 0xee,0xee,0xee,0xee,0xee,0xee,0xee,0xee, 0x99,0x99,0x99,0x99,0x99,0x99,0x99,0x99,
0x90,0x90,0x90,0x90,0x90,0x90,0x90,0x90, 0x22,0x22,0x22,0x22,0x22,0x22,0x22,0x22, 0x49,0x49,0x49,0x49,0x49,0x49,0x49,0x49, 0x82,0x82,0x82,0x82,0x82,0x82,0x82,0x82, 0x44,0x44,0x44,0x44,0x44,0x44,0x44,0x44,
0x41,0x41,0x41,0x41,0x41,0x41,0x41,0x41, 0x79,0x79,0x79,0x79,0x79,0x79,0x79,0x79, 0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe,0xfe, 0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, 0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,0x7F,
};
main()
{
unsigned int TFTaddr=0xc000;
TFTclr();
delay(500);
do{
TFTclr2();
delay(20000);
TFTclr();
delay(20000);
}while(1);
}
void TFTclr2()
{
int i;
unsigned int TFTaddr=0xc000; //addr=0xC000
P1=0x0f;
TFTaddr=0xcfff;
XBYTE[TFTaddr]=0x00;
P1=0x01;
loop:
for(i=0;i<320;i++) //4096
{
XBYTE[TFTaddr]=Data[i];
TFTaddr++;
}
TFTaddr=TFTaddr&0xff00;
TFTaddr=TFTaddr+0x0100;
if(TFTaddr>0xcf00) //fb9f //8行完否??
P1++, // ture
TFTaddr=0xc000;
if(P1>0x0f)
TFTclrB2();
else goto loop;
}
void TFTclrB2()
{
int i;
unsigned int TFTaddr;
P1=0x0f;
TFTaddr=0xcfff;
XBYTE[TFTaddr]=0xFF;
TFTaddr=0xc000;
P1=0x00;
loop:
for(i=0;i<320;i++) //4096
{
XBYTE[TFTaddr]=Data[i];
TFTaddr++;
}
TFTaddr=TFTaddr&0xff00;
TFTaddr=TFTaddr+0x0100;
if(TFTaddr>0xcf00) //fb9f //8行完否??
P1++, // ture
TFTaddr=0xc000;
if(P1>0x0f)
i=0;
else goto loop;
}
void TFTclr()
{
int i;
unsigned int TFTaddr=0xc000; //addr=0xC000
P1=0x0f;
TFTaddr=0xcfff;
XBYTE[TFTaddr]=0x00;
P1=0x01;
loop:
for(i=0;i<4096;i++) //4096
{
XBYTE[TFTaddr]=0x00;
TFTaddr++;
}
// TFTaddr=TFTaddr&0xff00;
// TFTaddr=TFTaddr+0x0100;
if(TFTaddr>0xcf00) //fb9f //8行完否??
P1++, // ture
TFTaddr=0xc000;
if(P1>0x0f)
TFTclrB();
else goto loop;
}
void TFTclrB()
{
int i;
unsigned int TFTaddr;
P1=0x0f;
TFTaddr=0xcfff;
XBYTE[TFTaddr]=0xFF;
TFTaddr=0xc000;
P1=0x00;
loop:
for(i=0;i<4096;i++) //4096
{
XBYTE[TFTaddr]=0x00;
TFTaddr++;
}
// TFTaddr=TFTaddr&0xff00;
// TFTaddr=TFTaddr+0x0100;
if(TFTaddr>0xcf00) //fb9f //8行完否??
P1++, // ture
TFTaddr=0xc000;
if(P1>0x0f)
i=0;
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 + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -