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

📄 tft.c

📁 MCB2300_ucgui_LCD320240.rar LPC2368的uc/gui的移植
💻 C
字号:

#include "TFT.h"

void TFTPortInit()
{
	SCS = (GPIO0M);

	PINSEL0 = 0;
	PINSEL1 = 0;
	PINSEL2 = 0;

	PINMODE0 = 0;
	PINMODE1 = 0;
	PINMODE2 = 0;

	FIO0DIR = 0xffffffff;
	FIO1DIR = 0xffffffff;
	FIO2DIR = 0xffffffff;

	TFT_RST_H(); //初始化端口状态
	TFT_RD_H();  
	TFT_WR_H();   
	TFT_CS_H();   
	TFT_RS_H();
}

//选定寄存器地址函数
void TFT_WR_REG(u8 index)
{
	TFT_RS_L();  //写寄存器时位0

	TFT_CS_L();

	TFT_WR_L();

	DataOut(index);

	TFT_WR_H();

	TFT_CS_H();

	TFT_RS_L();
}

//写8位数据函数
void TFT_WR_BYTE(u8 od)
{
	TFT_RS_H(); //读写数据时为1

	TFT_CS_L();

	TFT_WR_L();

	DataOut(od);

	TFT_WR_H();

	TFT_CS_H();

	TFT_RS_L();
}
/*
 //读8位数据函数
u8 TFT_RD_BYTE()
{
	u8 id;
	GPIOE->CRL.W = 0x88888888; //数据口PE0-7,输入.
	GPIOE->ODR.W |= 0x000000ff;//上拉 
	TFT_RS_H; //读写数据时为1
	TFTNop(2);
	TFT_CS_L;
	TFTNop(2);
	TFT_RD_L;
	TFTNop(2);
	TFT_RD_H;
	TFTNop(2);
	id = (u8)GPIOE->IDR.W;
	TFT_CS_H;
	TFTNop(2);
	TFT_RS_L;
	GPIOE->CRL.W = 0x33333333; //数据口PE0-7,50MHz输出,上拉.
	return id;
}
 */
//选定寄存器并写入数据函数
//输入:dbw 数据位数,1为16位,0为8位.
void TFT_WR_CMD(u8 dbw, u8 index, u16 val)
{
	TFT_WR_REG(index);
	if (dbw)
	{
		TFT_WR_BYTE((u8) (val >> 8));//先写高8位
	}
	TFT_WR_BYTE((u8) val);//写低8位或只有8位
}
/*
//读16位寄存器数据
u16 TFT_RD_REG16(u8 index)
{
 u16 id;
 TFT_WR_REG(index);
 id = TFT_RD_BYTE();
 id <<= 8;				//先读高8位
 id += TFT_RD_BYTE();	//再读低8位然后合并
 return id;
}
*/
//写16位数据
void TFT_WR_DATA(u16 dat)
{
	TFT_WR_BYTE((u8) (dat >> 8));
	TFT_WR_BYTE((u8) dat);
}

void TFTInit(void)
{
	TFTPortInit();

	TFT_RST_L();

	TFT_RST_H();

	//initializing funciton1
	TFT_WR_CMD(0, 0xA1, 0x00);

	TFT_WR_CMD(0, 0xA0, 0x00);

	TFT_WR_CMD(0, 0x70, 0xC8);

	TFT_WR_CMD(0, 0x72, 0xA3);

	//TFT_WR_CMD(0,0x73,0x04);

	//TFT_WR_CMD(0,0x75,0x45);

	TFT_WR_CMD(0, 0x76, 0x23);

	//TFT_WR_CMD(0,0x77,0x08);

	TFT_WR_CMD(0, 0x78, 0x08);

	TFT_WR_CMD(0, 0x79, 0x00);

	TFT_WR_CMD(0, 0x7F, 0xF0);

	TFT_WR_CMD(0, 0x71, 0x81);

	TFT_WR_CMD(0, 0x0D, 0x23);

	//TFT_WR_CMD(0,0x11,0x00);

	//TFT_WR_CMD(0,0x12,0x00);

	//TFT_WR_CMD(0,0x21,0x37);

	TFT_WR_CMD(0, 0x22, 0x02);

	TFT_WR_CMD(0, 0x23, 0x24);

	TFT_WR_CMD(0, 0x24, 0x13);
	/*

	TFT_WR_CMD(0,0x25,0x0A);

	TFT_WR_CMD(0,0x26,0x82);

	TFT_WR_CMD(0,0x27,0x01);

	TFT_WR_CMD(0,0x1E,0x25);

	TFT_WR_CMD(0,0x1F,0x59);

	//GAMMA设置
	TFT_WR_CMD(1,0x30,0x0777);

	TFT_WR_CMD(1,0x31,0x0444);

	TFT_WR_CMD(1,0x32,0x0555);

	TFT_WR_CMD(1,0x33,0x0444);

	TFT_WR_CMD(1,0x34,0x0333);

	TFT_WR_CMD(1,0x35,0x0333);

	TFT_WR_CMD(1,0x36,0x0333);

	TFT_WR_CMD(1,0x37,0x0333);

	TFT_WR_CMD(1,0x38,0x0444);

	TFT_WR_CMD(1,0x39,0x0555);

	TFT_WR_CMD(1,0x3A,0x0666);

	TFT_WR_CMD(1,0x3B,0x0666);

	TFT_WR_CMD(1,0x3C,0x0777);

	TFT_WR_CMD(1,0x3D,0x0777);

	TFT_WR_CMD(1,0x3E,0x0777);

	TFT_WR_CMD(1,0x3F,0x0777);

	TFT_WR_CMD(1,0x40,0x0777);

	TFT_WR_CMD(1,0x41,0x0777);

	TFT_WR_CMD(1,0x42,0x0777);

	TFT_WR_CMD(1,0x43,0x0777);

	TFT_WR_CMD(1,0x44,0x0777);

	TFT_WR_CMD(1,0x45,0x0777);

	TFT_WR_CMD(1,0x46,0x0777);

	TFT_WR_CMD(1,0x47,0x0777);

	TFT_WR_CMD(1,0x48,0x0777);

	TFT_WR_CMD(1,0x49,0x0777);

	TFT_WR_CMD(1,0x4A,0x0777);

	TFT_WR_CMD(1,0x4B,0x0777);

	TFT_WR_CMD(1,0x4C,0x0777);

	TFT_WR_CMD(1,0x4D,0x0666);

	TFT_WR_CMD(1,0x4E,0x0666);

	TFT_WR_CMD(1,0x4F,0x0666);
	  	*/
	TFT_WR_CMD(0, 0x00, 0x90);	//扫描方向控制

	//TFT_WR_CMD(0,0x01,0x07);	//扫描方向控制

	TFT_WR_CMD(0, 0x02, 0x00);		//起X
	TFT_WR_CMD(1, 0x03, 0x0000);	//起Y
	TFT_WR_CMD(0, 0x04, 0xEF);		//终X(0~239)	
	TFT_WR_CMD(1, 0x05, 0x013F);	//终Y(0~319)

	//窗口设置
	//TFT_WR_CMD(0,0x06,0x00);		//水平起始位置
	//TFT_WR_CMD(1,0x07,0x0000);	//垂直起始位置
	//TFT_WR_CMD(0,0x08,0xEF);		//水平结束位置
	//TFT_WR_CMD(1,0x09,0x013F);	//垂直结束位置
	/*

	TFT_WR_CMD(0,0x0A,0x00);

	TFT_WR_CMD(0,0x0B,0x00);

	TFT_WR_CMD(0,0x0C,0x00);

	TFT_WR_CMD(0,0x14,0x00);

	TFT_WR_CMD(0,0x15,0x00);

	TFT_WR_CMD(0,0x16,0x00);

	TFT_WR_CMD(1,0x17,0x01FF);

	TFT_WR_CMD(1,0x18,0x01FF);
		
	TFT_WR_CMD(0,0x13,0x00);

	TFT_WR_CMD(1,0x19,0x01FF);

	TFT_WR_CMD(1,0x1B,0x01FF);

	TFT_WR_CMD(1,0x1C,0x01FF);

	TFT_WR_CMD(1,0x1A,0x01FF);	

	TFT_WR_CMD(0,0x1D,0x0E);
	*/
	TFT_WR_CMD(0, 0x10, 0x06);		//开显示
	//TFT_WR_REG(0x0E);
}

⌨️ 快捷键说明

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