⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 123.c

📁 3.2寸真彩TFT液晶触摸屏
💻 C
字号:
#include <reg52.h>
//#include<stdio.h>
#include<define.h>
//#include<asc_zimo.h>
//#include<Hz_zimo.h>
//#include<pic.h>
#include<ssd1289.c>
//#include<touch.c>

uchar xdata pic[240];
uchar num,flag;
uint num_shu;
//=================================  
void DispSmallPic(uint num, uchar *str)
{
    uint k,temp;
	uchar i,j;
	if(num%2==0)
	{
		j=120;
		k=num/2-1;
	}
	else
	{
		j=0;
		k=(num+1)/2-1;
	}
    Set_ramaddr(j,k);
    send_command(0x22); 
    for(i=0;i<120;i++)
    {   
        temp=str[2*i+1]<<8;     //低位在前
        temp|=str[2*i];
        send_data(temp);
    }
}
void uartint()
{
	TMOD=0x20;
	TH1=0xff;
	TL1=0xff;
	PCON=0x80;
	TR1=1;
	SM0=0;
	SM1=1;
	REN=1;
	EA=1;
	ES=1;
}  
main()
{
  //  uint T_x = 3;
  //  uint T_y = 4;
    uchar R_data=0;
	uchar G_data=0;
	uchar B_data=0;
	num_shu=0;
	num=0;
	uartint();
  //  uint i,j,k=0;
    res=0;      //低电平复位
    DelayNS(1000);
    res=1;
 //   send_command(0x00);
 //   i=rece_data();
    DelayNS(10000);//等待电源恢复正常
    ssd1289_init();
 //   touch_Init();
    DispClear();        
    send_command(0x22);
//	DispSmallPic(0, 0, 101, 103, pic2);
//	DrawString(0, 70, "触摸测试:", WHITE, BLACK, NORMAL);
 //   DrawString(0, 152, "Easy Do It!!", RED, YELLOW, NORMAL);
//	DrawString(0, 168, "支持各种单片机", RED,YELLOW,TRANSP);
//	DrawString(0, 184, "提供Keil C51演示程序",YELLOW,RED,NORMAL);
 //   DispSmallPic(148, 0, 92, 175, pic);
	//==============================  
 //	Set_ramaddr(0,200);
//	send_command(0x22);
 /*	R_data=0;G_data=0;B_data=0;  	
    for(j=0;j<20;j++)//红色渐强条
	{
        for(i=0;i<240;i++)
            {R_data=i/8;send_data(R_data<<11|G_data<<5|B_data);}
	}
    R_data=0x1f;G_data=0x3f;B_data=0x1f;
    for(j=0;j<20;j++)
	{
        for(i=0;i<240;i++)
            {
			G_data=0x3f-(i/4);
			B_data=0x1f-(i/8);
			send_data(R_data<<11|G_data<<5|B_data);}
	}
//----------------------------------
	R_data=0;G_data=0;B_data=0;
    for(j=0;j<20;j++)//绿色渐强条
	{
        for(i=0;i<240;i++)
            {G_data=i/4;send_data(R_data<<11|G_data<<5|B_data);}
	}
    R_data=0x1f;G_data=0x3f;B_data=0x1f;
    for(j=0;j<20;j++)
	{
        for(i=0;i<240;i++)
            {
			R_data=0x1f-(i/8);
			B_data=0x1f-(i/8);
			send_data(R_data<<11|G_data<<5|B_data);}
	}
//----------------------------------
	R_data=0;G_data=0;B_data=0;
    for(j=0;j<20;j++)//蓝色渐强条
	{
        for(i=0;i<240;i++)
            {B_data=i/8;send_data(R_data<<11|G_data<<5|B_data);}
	} 
	B_data=0; 
    R_data=0x1f;G_data=0x3f;B_data=0x1f;
    for(j=0;j<20;j++)
	{
        for(i=0;i<240;i++)
            {
			G_data=0x3f-(i/4);
			R_data=0x1f-(i/8);
			send_data(R_data<<11|G_data<<5|B_data);}
	}
 //==============================   */             
    while(1)
	{
		if(flag==1)
		{
		//	EA=0;
			num_shu++;
			if(num_shu==641)
				num_shu=1;
			DispSmallPic(num_shu, pic);
		//	SBUF=0x01;
		//	while(!TI);
		//	TI=0;
			flag=0;
		//	EA=1;		
		}
	}
 /*   {   
        if (touch_INT==0)
        {
            touch_GetAdXY(&T_x, &T_y);
            DispNum(20, 90, T_x);
            DispNum(20, 110, T_y);
        }
    }*/
}

void serial() interrupt 4
{
	pic[num]=SBUF;
	num++;
	if(num==240)
	{
		flag=1;
		num=0;
	}		
	RI=0;
}

⌨️ 快捷键说明

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