第一范文网 - 专业文章范例文档资料分享平台

2.4寸彩屏430例程 彩屏驱动部分

来源:用户分享 时间:2025/8/25 14:37:08 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

这是我自己参照王伟明老师的视屏教程和他提供的51例程所更改的MSP430 14系列单片机的TFT彩屏例程,该例程分为含三部分,一为主函数(main())部分,彩屏驱动部分,和彩屏GUI函数部分。本部分为彩屏驱动函数部分。

本彩屏是使用的是16位的数据线 彩屏图片为:

接线图片为:

注意:图中排针脚标号不对,接地的为1;

彩屏驱动程序.h文件 TFT.h

#include

#define Bus_16 //16位数据模式,如果使用8位模式,请注释此语句,如果使用16位模式,请打开此句

#define LCD_DataPortH P2OUT //高8位数据口,8位模式下只使用高8位 #define LCD_DataPortL P1OUT //低8位数据口 ,8位模式下低8位可以不接线 #define LCD_RS_H P4OUT|=(1<<6) //数据切换 #define LCD_RS_L P4OUT&=~(1<<6) //命令切换 #define LCD_WR_H P4OUT|=(1<<5) //写控制 #define LCD_WR_L P4OUT&=~(1<<5) //写关控制 #define LCD_RD_H P4OUT|=(1<<4) //读控制 #define LCD_RD_L P4OUT&=~(1<<4) //读关控制 #define LCD_CS_H P4OUT|=(1<<3) //片选 #define LCD_CS_L P4OUT&=~(1<<3) //关片选 #define LCD_REST_H P4OUT|=(1<<1) //复位 #define LCD_REST_L P4OUT&=~(1<<1) //关复位

void delayms(int count);

void LCD_Writ_Bus(char VH,char VL); void LCD_Write_COM(char VH,char VL); void LCD_Write_DATA(char VH,char VL);

void Address_set(unsigned int x1,unsigned int y1,unsigned int x2,unsigned int y2); void LCD_Init(void);

void Pant(char VH,char VL);

void write_data_u16(unsigned int dat);

void LCD_setxy(unsigned char x,unsigned int y);

彩屏驱动程序.c文件 TFT.c

#include #include \//#include \//#include \

unsigned int color[]={0xf800,0x07e0,0x001f,0xffe0,0x0000,0xffff,0x07ff,0xf81f};

void delayms(int count) // /* X1ms */ {

int i,j;

for(i=0;i

for(j=0;j<100;j++); }

//#ifdef Bus_16 //条件编译-16位数据模式

void LCD_Writ_Bus(char VH,char VL) //并行数据写入函数 {

LCD_DataPortH=VH; LCD_DataPortL=VL; LCD_WR_L; LCD_WR_H; }

/*#else //条件编译-8位数据模式

void LCD_Writ_Bus(char VH,char VL) //并行数据写入函数 {

LCD_DataPortH=VH; LCD_WR_L; LCD_WR_H; LCD_DataPortH=VL; LCD_WR_L; LCD_WR_H; }

#endif*/

void LCD_Write_COM(char VH,char VL) //发送命令 {

LCD_RS_L; LCD_Writ_Bus(VH,VL); }

void LCD_Write_DATA(char VH,char VL) //发送数据 {

LCD_RS_H; LCD_Writ_Bus(VH,VL); }

//==============================================================

//写16位数据

//功能: 写一个数据到TFT控制器。 //入口参数: dat为要写入的16位数据。 //出口参数: 无

void write_data_u16(unsigned int dat) { unsigned char m,n; m=dat>>8; n=dat; LCD_Write_DATA(m,n); }

void Address_set(unsigned int x1,unsigned int y1,unsigned int x2,unsigned int y2) {

LCD_Write_COM(0x00,0x20);LCD_Write_DATA(x1>>8,x1); //设置X坐标位置 LCD_Write_COM(0x00,0x21);LCD_Write_DATA(y1>>8,y1); //设置Y坐标位置 LCD_Write_COM(0x00,0x50);LCD_Write_DATA(x1>>8,x1); //开始X LCD_Write_COM(0x00,0x52);LCD_Write_DATA(y1>>8,y1); //开始Y LCD_Write_COM(0x00,0x51);LCD_Write_DATA(x2>>8,x2); //结束X LCD_Write_COM(0x00,0x53);LCD_Write_DATA(y2>>8,y2); //结束Y LCD_Write_COM(0x00,0x22); }

//===============================================================

//设定当前显示坐标

//入口参数: x,y为当前显示坐标。 //出口参数: 无

//说明:本函数实际上是LCD_setwindow函数的一个特例,显示窗口为最小,仅是一个像素点。

void LCD_setxy(unsigned char x,unsigned int y) { Address_set(x,y,x,y); }

void LCD_Init(void) {

LCD_REST_H; delayms(10); LCD_REST_L; delayms(10); LCD_REST_H; LCD_CS_H; LCD_RD_H;

搜索更多关于: 2.4寸彩屏430例程 彩屏驱动部分 的文档
2.4寸彩屏430例程 彩屏驱动部分.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4rel66cnel6c4rp7pot6_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top