TFTHD66772驱动程序.docx
- 文档编号:2427782
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:19
- 大小:18.59KB
TFTHD66772驱动程序.docx
《TFTHD66772驱动程序.docx》由会员分享,可在线阅读,更多相关《TFTHD66772驱动程序.docx(19页珍藏版)》请在冰豆网上搜索。
TFTHD66772驱动程序
/**************************************************************************************
文件:
彩色液晶驱动
驱动芯片:
HD667723.3V
液晶屏型号:
TX05D99VM1AAA
***************************************************************************************/
#ifndef__TFT_HD66772_H
#define__TFT_HD66772_H
#include"STR_Array.h"
/**************************************************************************************
用户自定义液晶管脚
***************************************************************************************/
#defineInt_Data((GPIO2DATA>>5)|(GET_BIT(GPIO3DATA,4)<<6)|(GET_BIT(GPIO3DATA,5)<<7))&0xff//输入指令
#defineRST_0P0_8_LOW()//液晶复位管脚
#defineRST_1P0_8_HIGHT()
#defineRD_0P0_9_LOW()//液晶的RD管脚
#defineRD_1P0_9_HIGHT()
#defineWR_0P0_3_LOW()//液晶的WR管脚
#defineWR_1P0_3_HIGHT()
#defineRS_0P0_7_LOW()//液晶的RS管脚
#defineRS_1P0_7_HIGHT()
#defineCS_0P2_4_LOW()//液晶的CS管脚
#defineCS_1P2_4_HIGHT()
voidInput(void);//管脚设置为输入
voidOutput(void);//管脚设置为输出
voidDelay_ms(INT32UulTime);//ms延时程序
voidDelay_us(INT32UulTime);//us延时
voidtft_initial(void);//初始化
voidgpio_output(INT32Utft_data);//管脚输出数据
voidLCD_WR_REG(INT8Uindex);//tft写寄存器
voidLCD_WR_CMD(INT8Uindex,INT16Uval);//tft写指令
voidLCD_WR_Data(INT16Uval);//tft写数据
voidgpio_output(INT32Utft_data);//管脚输出数据
INT16ULCD_RD_REG16(INT8Uindex);//tft读取数据
voidLCD_clear(INT16Up);//tft清屏指令
voidLcd_Frame(void);//显示边框
voidGUI_Line(INT8Ux0,INT8Uy0,INT8Ux1,INT8Uy1,INT16URGB_Color);//lcd画线
voidLcd_SetDrop(INT8Upostion_x,INT8Upostion_y,INT16URGB_Color);//lcd画点
voidDisplayString(INT8USelect,INT8U*s,INT8Ux,INT8Uy);//显示字符串
voidDisplayGB2312(INT8USelect,INT8Ugb,INT8Upostion_x,INT8Upostion_y);//显示字符
voidDisplayChar(INT8USelect,INT8Ucasc,INT8Upostion_x,INT8Upostion_y);//显示字符
INT16UconstColor[]={0xf800,0x07e0,0x001f,0xffe0,0x0000,0xffff,0x07ff,0xf81f};
//对应颜色红绿蓝黄黑白浅绿粉红
enumRGB{red=0,green,blue,yellow,black,white,light_green,pink};
/**************************************************************************************
说明:
更改管脚输入输出属性
***************************************************************************************/
voidInput(void)
{
GPIO2DIR&=~P2_5;GPIO2DIR&=~P2_6;GPIO2DIR&=~P2_7;
GPIO2DIR&=~P2_8;GPIO2DIR&=~P2_9;GPIO2DIR&=~P2_10;
GPIO3DIR&=~P3_4;GPIO3DIR&=~P3_5;
}
voidOutput(void)
{
GPIO2DIR|=P2_5;GPIO2DIR|=P2_6;GPIO2DIR|=P2_7;
GPIO2DIR|=P2_8;GPIO2DIR|=P2_9;GPIO2DIR|=P2_10;
GPIO3DIR|=P3_4;GPIO3DIR|=P3_5;
}
/***************************************************************************************
说明:
ms延时程序
***************************************************************************************/
voidDelay_ms(INT32UulTime)
{
INT32Ui=0;
while(ulTime--){//1.36ms
for(i=0;i<5000;i++);
}
}
voidDelay_us(INT32UulTime)
{
INT32Ui=0;
while(ulTime--){//1.36us
for(i=0;i<5;i++);
}
}
/***************************************************************************************
说明:
TFT初始化
***************************************************************************************/
voidtft_initial(void)
{
//模式选择
//IM0_1;IM3_0;//8bit,65kcolors
RST_0;Delay_ms(200);
RST_1;Delay_ms(200);
LCD_WR_CMD(0x00,0x0001);//Start_osc
Delay_us(1000);
LCD_WR_CMD(0x03,0x0030);
//LCD_WR_CMD(0x03,0x0230);
LCD_WR_CMD(0x01,0x011D);
Delay_us(100);
LCD_WR_CMD(0x0a,0x0106);
Delay_us
(1);
LCD_WR_CMD(0x08,0x0707);
LCD_WR_CMD(0x0c,0x01);
LCD_WR_CMD(0x02,0x0400);
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0107);
Delay_us
(1);
LCD_WR_CMD(0x12,0x0001);//VciOUT=3V×0.83=2.49V
//only100(=VCI),000(.92VCI),001(.83),010(.73VCI)isvalid.otherisinhibited
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0101);
Delay_us
(1);
//LCD_WR_CMD(0x13,0x404);
//Delay_us
(1);LCD_WR_CMD(0x0a,0x0101);Delay_us
(1);
LCD_WR_CMD(0x11,0x0505);//CAD=0;
//Delay_us
(1);LCD_WR_CMD(0x0a,0x0101);Delay_us
(1);
LCD_WR_CMD(0x14,0x2c0f);//last4bitmustbe1vcomg=1,
//VDV4-0==09-0e,10-12//otherisinhibited.
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0102);
Delay_us
(1);
LCD_WR_CMD(0x10,0x1a10);//ifVci>3.0V,use0x1a10.
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0100);
Delay_us
(1);
LCD_WR_CMD(0x13,0x0616);//////////VERYIMPORTANT
//setVRH3-0tofitREG1out=3toDDVDH-0.5
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0101);
Delay_us(1000);
LCD_WR_CMD(0x30,0x0003);
LCD_WR_CMD(0x31,0x0404);
LCD_WR_CMD(0x32,0x0303);
LCD_WR_CMD(0x33,0x0406);
LCD_WR_CMD(0x34,0x0404);
LCD_WR_CMD(0x35,0x0303);
LCD_WR_CMD(0x36,0x0407);
LCD_WR_CMD(0x37,0x0604);
LCD_WR_CMD(0x07,0x0037);
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0100);
Delay_us(1000);
//***********SAP,APset****************
LCD_WR_CMD(0x10,0x1a10);//BT2-0Ok,and...
Delay_us
(1);
LCD_WR_CMD(0x0a,0x0100);
Delay_us(100);
//***********PONset********************
LCD_WR_CMD(0x13,0x0616);//////////
De
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- TFTHD66772 驱动程序
![提示](https://static.bdocx.com/images/bang_tan.gif)