单片机接口TFT彩色液晶屏模块的应用
TFT因为轻薄,辐射少,数位化,已广泛应用在工业自动化,电力,电信,环保,医疗,金融等领域。
相对黑白模块,TFT液晶显示模块有它的复杂之处,它有显示接口多样,外围电路复杂,没有成熟的统一的驱动控制芯片,因此对客户来说,选择液晶屏、驱动控制方案、配件、以及应用调试都需要相当专业的人员来进行。所以对很多想用TFT的单片机用户来说,这是一座很高的门槛,一担心单片机系统要升级,二怕速度不够,效果不好,三怕成本过高,四怕编程麻烦。
INTEL8080接口控制TFT彩色液晶原理图
本方案采用武汉谷鑫科技的BS系列模块,其核心电路均采用大规模可编程逻辑器件设计,全硬件实现,性能稳定可靠,产品一致性好。采用简单的并行总线方式与51单片机、AVR、DSP、PIC、ARM等CPU直接连接,信号包括数据D[7:0]、地址A[1:0]、片选/CS、写/WR、读/RD。
单片机与TFT控制器的接口定义
引脚 |
符号 |
功能 |
备注 |
1 |
GND |
液晶屏逻辑地 |
0V |
2 |
GND |
液晶屏逻辑地 |
0V |
3 |
5V |
液晶屏逻辑电源 |
5V |
4 |
RDJ |
读操作信号,低电平有效 |
IN 3.3/5V |
5 |
WRJ |
写操作信号,低电平有效 |
IN 3.3/5V |
6 |
CSJ |
片选信号,低电平对屏操作有效 |
IN 3.3/5V |
7 |
A0 |
地址线0 |
IN 3.3/5V |
8 |
A1 |
地址线1 |
IN 3.3/5V |
9 |
D0 |
数据总线 |
INOUT 3.3/5V |
10 |
D1 |
数据总线 |
INOUT 3.3/5V |
11 |
D2 |
数据总线 |
INOUT 3.3/5V |
12 |
D3 |
数据总线 |
INOUT 3.3/5V |
13 |
D4 |
数据总线 |
INOUT 3.3/5V |
14 |
D5 |
数据总线 |
INOUT 3.3/5V |
15 |
D6 |
数据总线 |
INOUT 3.3/5V |
16 |
D7 |
数据总线 |
INOUT 3.3/5V |
17 |
TIRQ |
7843中断 |
IN 3.3/5V |
18 |
TDOUT |
7843 数据输出 |
IN 3.3/5V |
19 |
TBUSY |
7843 busy |
IN 3.3/5V |
20 |
TDIN |
7843数据输入 |
IN 3.3/5V |
21 |
TCS |
7843片选 |
IN 3.3/5V |
22 |
TDLK |
7843 spi时钟 |
IN 3.3/5V |
23 |
GND |
液晶屏逻辑地 |
0V |
24 |
GND |
液晶屏逻辑地 |
0V |
总线时序
图片数据的显示:以分辨率为640*480为例
将图中间区域填充成蓝色。
采用逐行操作模式。
在每行的写操作前,先设置X、Y。
#include <reg51.h>
#include <absacc.h>
#define X_ADDR XBYTE[0x0000]
#define Y_ADDR XBYTE[0x0100]
#define CMD XBYTE[0x0200]
#define DAT XBYTE[0x0300]
main()
{
unsigned int x,y;
//用白色清屏
CMD=0;
X_ADDR = 0;
X_ADDR = 0;
Y_ADDR = 0;
Y_ADDR = 0;//////////////对于分辨率为320240的液晶模块,Y坐标只需要写入1次//////////
for (y=0;y<480;y++)
{ for (x=0;x<640;x++) DAT = 0xff; }
//用蓝色填充中间区域
CMD=0;
for (y=70;y<361;y++)
{ x=41;
X_ADDR = x; //写地址地低8位
X_ADDR = x/256; //写列地址高位
Y_ADDR = y;
Y_ADDR = y/256; /////////对于分辨率为320240的液晶模块,Y坐标只需要写入1次//////
for(x=41;x<581;x++) DAT = 0x03;
采用的武汉谷鑫科技液晶模块(mcutech)的一个效果图,
业务咨询:932174181 媒体合作:2279387437 24小时服务热线:15136468001 盘古机械网 - 全面、科学的机械行业免费发布信息网站 Copyright 2017 PGJXO.COM 豫ICP备12019803号