微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 关于8位单片机驱动液晶屏的应用总结

关于8位单片机驱动液晶屏的应用总结

时间:12-01 来源:互联网 点击:

write_data(x0>>

write_data(x1>>

write_data(y0>>

write_data(y1>>

efineYellow0xFFE0//黄

好了说了这么多,一个字晕。好吧,来点实际的简单的,咱先啥字符也不显示,

只是让液晶屏显示不同的颜色。

刷整个屏幕的颜色

可以用如下代码实现

/*********显示色彩******************/

voiddsp_single_colour(DH,DL)//前景颜色,背景颜色

{

unsignedinti,j;

for(i=0;i<128;i++)

for(j=0;j<160;j++)

{

write_data(DH>>8);

write_data(DH);

write_data(DL>>8);

write_data(DL);

}

}

延时函数

/******延时函数************************/

voiddelay(uinttime)

{

uinti,j;

for(i=0;ifor(j=0;j<500;j++);

}

好了,将上面的函数组合起来,准备刷屏。

main()

{

lcd_initial();//TFT初始化

while(1)

{

LCD_SetPos(0,159,0,10);//设置位置

dsp_single_colour(Blue,Black);//

delay(2000);

LCD_SetPos(0,159,10,20);//设置位置

dsp_single_colour(Blue,Blue);//

delay(2000);

LCD_SetPos(0,159,20,30);//设置位置

dsp_single_colour(Green,White);//

delay(2000);

LCD_SetPos(0,159,30,40);//设置位置

dsp_single_colour(Green,Green);//

delay(2000);

LCD_SetPos(0,159,40,50);//设置位置

dsp_single_colour(Yellow,White);//

delay(2000);

LCD_SetPos(0,159,50,60);//设置位置

dsp_single_colour(Yellow,Yellow);//

delay(2000);

LCD_SetPos(0,159,60,70);//设置位置

dsp_single_colour(Black,White);//

delay(2000);

LCD_SetPos(0,159,70,80);//设置位置

dsp_single_colour(Black,Black);//

delay(2000);

LCD_SetPos(0,159,80,90);//设置位置

dsp_single_colour(Red,White);//

delay(2000);

LCD_SetPos(0,159,90,100);//设置位置

dsp_single_colour(Red,Red);//

delay(2000);

LCD_SetPos(0,159,100,110);//设置位置

dsp_single_colour(Magenta,Black);//

delay(2000);

LCD_SetPos(0,159,110,120);//设置位置

dsp_single_colour(Magenta,Magenta);//

delay(2000);

LCD_SetPos(0,159,0,120);//设置位置

dsp_single_colour(White,White);//只刷到第121行留下了7行

delay(2000);

}

}

最终结果,滚动刷屏


感觉有点不对劲,不错,最下面故意留了7行没写颜色数据。可以看到如果不写任何数据,屏的状态就是花屏。

通过上面的说明了解了:

TFT液晶屏的操作原理,就是写数据和写命令。

通过对写数据或写命令的代码的分析,可以看到数据是怎样输送的。

TFT液晶屏的初始化工作的主要内容。

常用的颜色代码。

如何让液晶屏显示不同的颜色。

最后仔细观察图片,可以了解

什么是隔行扫面,前景颜色,背景颜色。

以及,花屏是什么原因造成的。

至于如何显示字符,汉字,图片,下回再说。

关于在tft上模拟现实七段数码管详见:http://www.51hei.com/bbs/dpj-30555-1.html

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top