TFTLCD显示实验

合集下载

17.TFT-LCD实验—字符显示

17.TFT-LCD实验—字符显示
• 实现方式:采用两种编程方法进行实验: ①通过设置模块寄存器,来实现功能应用; ②通过调用库函数driverlib,来实现功能应用。
实验2:FLASH数据拷贝
• 实现功能:实现在信息段Info C中写入递增的自 然数数值,并将Info C的数据拷贝至Info D, Info D中的数据也是同样递增的数值,P4.2口的绿色 指示灯D9闪烁,以指示写入操作完成。
实验3:程序调试与现象(3/4)
• 运行程序到断点处,再次查看FLASH地址段 0x1800~0x1804,是否为下图所示。
实验3:程序调试与现象(5/5)
• 写FLASH功能完成后,P4.2口的绿色指示灯D9闪烁指示 。
谢谢观赏
WPS Office
Make Presentation much more fun
实验目的
• 掌握FLASH、RAM工作原理 • 了解主控芯片MSP430F6638片内存储器结构,学会配置 FLASH、RAM模块的寄存器,实现控制FLASH、RAM存 储器的读取、烧写与擦除 • 学会使用库函数实现对FLASH、RAM读写
实验1:FLASH基本擦写
• 实现功能:实现基本的擦除和写入操作,将已设 定的数据0x12345678写入Info D ,地址为 0x1800,P4.2口的绿色指示灯D9闪烁,以指示写 入操作完成。
实验4: FLASH读写长地址
• 实现功能:首先向主存储区从BANK1的起始地址 0x18000开始的16字节,即0x18000~0x18010写 递增的自然数,再从0x18000~0x18010读出这些 存储区存放的数值,存放在程序定义的数组变量 中。 • 实现方式:采用两种编程方法进行实验: ①通过设置模块寄存器,来实现功能应用;

15.16、 TFT彩屏显示实验

15.16、 TFT彩屏显示实验

TFT彩屏显示实验学习了前面较为基础的实验后,本节我们来了解TFT彩屏的显示实验。

主要是了解如何采用各种不同的颜色显示不同的界面,同时可以将预先设置的字符用不同的颜色进行显示。

业界上的2.8寸和3.2寸的彩屏手机,也都是采用相类似的TFT实现的。

z意义与作用TFT屏在信息行业快速发展中得到广泛的运用,中高端的手机、可视电话、便携式的VCD、平板电脑等等;本节实验,让大家了解TFT彩屏的显示原理,以及如何使用STM32驱动LCD显示不同画面的过程。

z实验原理TFT LCD简介TFT就是“Thin Film Transistor”的简称,一般代指薄膜液晶显示器,而实际上指的是薄膜晶体管(矩阵)——可以“主动的”对屏幕上的各个独立的像素进行控制。

对于图象产生的基本原理为:显示屏由许多可以发出任意颜色的光线的像素组成,主要控制各个像素显示相应的颜色就可以达到目的。

在TFT LCD中一般会采用背光技术,为了能精确的控制每一个像素的颜色和亮度就需要在每一个想色之后安装一个类似百叶窗的开关,当“百叶窗”打开时光线就可以透射过来,而“百叶窗”关上之后,光线就无法透射。

神舟IV号开发板上配带的TFT LCD屏,LCD屏为320x240分辨率,262K色(26万色)。

神舟IV号STM32开发板支持2.8/3.2寸的ILI9320或1289等等的TFT LCD,在本例程中,我们以ILI9320控制器进行简单的介绍。

ILI9320控制器是一款带有262144(26万色)种颜色的单芯片SoC驱动的晶体管显示器,320x240的分辨率,包括720路源极驱动以及320路的栅极驱动,自带有显存,容量为172800字节。

本次ILI9320控制模块与STM32处理器之间的接口为“i80-system”接口,用到的信号包括以下这下所示:其中DB为数据总线,其它的信号为控制信号,控制信号的含义如下:ILI9320控制的内部结构框图如下所示:由于该芯片支持262K色(26万色),也就是说每一个点可以有26万不同的颜色,那么要从数据总线上一次传输26万色的数据,需要18根并行的数据线(2的18次方=262144)。

实践课04 LCD液晶显示原理和点阵图实验

实践课04 LCD液晶显示原理和点阵图实验

LCD液晶显示原理和点阵图实验1、LCD液晶显示LCD,是英文Liquid Crystal Display的缩写,中文名称翻译为液晶显示器。

目前常用的是薄膜晶体管液晶显示器,其英文名称为Thin-film transistor liquid crystal display,简称为TFT LCD。

TFT-LCD液晶显示器的显像原理是采用“背透式”照射方式。

当光源照射时,先通过下偏光板向上透出,借助液晶分子来传导光线。

由于上下夹层的电极改成FET电极和共通电极,在FET电极导通时,液晶分子的排列状态同样会发生改变,也通过遮光和透光来达到显示的目的。

但不同的是,由于FET晶体管具有电容效应,能够保持电位状态,先前透光的液晶分子会一直保持这种状态,直到FET电极下一次再加电改变其排列方式为止。

2、TFT LCD的切面结构图3、放大器下的液晶4、液晶显示器的技术参数①可视面积液晶显示器所标示的尺寸就是实际可以使用的屏幕范围一致。

例如,一个15.1英寸的液晶显示器约等于17英吋CRT屏幕的可视范围。

②可视角度液晶显示器的可视角度左右对称,而上下则不一定对称。

举个例子,当背光源的入射光通过偏光板、液晶及取向膜后,输出光便具备了特定的方向特性,也就是说,大多数从屏幕射出的光具备了垂直方向。

假如从一个非常斜的角度观看一个全白的画面,我们可能会看到黑色或是色彩失真。

一般来说,上下角度要小于或等于左右角度。

如果可视角度为左右80度,表示在始于屏幕法线80度的位置时可以清晰地看见屏幕图像。

③点距举例来说一般14英寸LCD的可视面积为285.7mm×214.3mm,它的最大分辨率为1024×768,那么点距就等于:可视宽度/水平像素(或者可视高度/垂直像素),即285.7mm/1024=0.279mm(或者是214.3mm/768=0.279mm)。

④色彩度LCD重要的当然是的色彩表现度。

我们知道自然界的任何一种色彩都是由红、绿、蓝三种基本色组成的。

msp430TFT-LCD,UART,I2C实验报告

msp430TFT-LCD,UART,I2C实验报告

SPI_SLAVE_Trigger(); SPI_Delay(20000); }
void main(void)
{
volatile unsigned int i;
WDTCTL = WDTPW+WDTHOLD;
// Stop watchdog timer
SPI_GPIO_Init();
// 配置SPI接口
Msp430 单片机第五次实验报告
1.TFT-LCD 实验—字符显示 1.1 实验目的
认识并了解LCD 屏显示原理;重点学习TFT_LCD 屏原理及其应用;SPI 的应用;学会灵 活运用LCD 屏。
1.2 实验原理
开发板采用2.4 寸TFT-LCD 液晶屏。240×RGB X320 点TFT 透射式点阵液晶显示模块; 驱动的duty:1/240 Duty;ILI9328 LCD 驱动程序或同等能力。逻辑电压:2.8V。数据接口: 80 的系统8/9/16/18bit 总线接口。触摸面板。白色背光。
// Clock polarity high, MSB
UCB1CTL1 |= UCSSEL_2;
// SMCLK
UCB1BR0 = 0x02;
// /2
UCB1BR1 = 0;
//
//UCB1MCTL = 0;
// No modulation
UCB1CTL1 &= ~UCSWRST;
// **Initialize USCI state
17位或8位数据位支持奇偶校验2独立的发送和接收移位寄存器3独立的发送和接收缓存4可选择先发送接收msb还是lsb5空闲位多机模式和地址位多机模式6通过有效的起始位检测将msp430从低功耗唤醒7状态标志检测错误或者地址位8独立的接收和发送中断9可编程实现波特率的调整333实验步骤1将pc和板载仿真器通过usb线相连

10 TFT LCD 显示实验

10 TFT LCD 显示实验

深圳市雷迈特科技有限公司
二、实验设备
1.ARM实验箱 。 2.ADS1.2 集成开发环境,ARM 仿真器。 3.串口连接线。

深圳市雷迈特科技有限公司
三、实验内容
编写程序,实现再任意位置画长方形的功能 以及显示图片。

深圳市雷迈特科技有限公司
深圳市雷迈特科技有限公司
九、实验结果
在 LCD 上显示矩形框和图片。

深圳市雷迈特科技有限公司
深圳市雷迈特科技有限公司
六、实验步骤 4. 打开仿真器驱动程序 Multi-ICE server , 并加载配置文件 ARM920T.cfg。 5. 打开 ARM的开发环境 AXD Debugger, 在 AXD Debugger 中加载可执行映象文 件HK_FTFLCD.axf。 6. 执行映象文件,在 TFTLCD 上观察实验 结果。
www.HKZΒιβλιοθήκη 深圳市雷迈特科技有限公司
五、程序实现
TFT程序例程 程序例程

深圳市雷迈特科技有限公司
六、实验步骤
1. 连接好实验环境,将仿真器的一端通过并口连 接到 PC 机,将仿真器的另一端通过 ARM仿真 器先连接到 ARM实验箱 的 JTAG 接口。 2. 将串口线一端接到 PC 机,另一端接到 ARM实 验箱 的 UART0 接口;打开串口 超级终端 dnw.exe,设置串口 Baud Rate 为 115200,选 择 COM1。 3. 打开 ADS CodeWarrior,在 ADS CodeWarrior 中打开实验工程 HK_FTFLCD.mcp;并对 工程 进行编译。
四、实验原理
1 LCD 原理介绍 超薄型显示器技术
数字相机、 笔记型计算机、PDA 2 液晶显示器的种类 超扭转式向列型(Super Twisted Nematic, 简称 STN) 薄膜式晶体管型(Thin Film Transistor; TFT)

液晶显示器LCD试验基础规范

液晶显示器LCD试验基础规范

液晶显示屏LCD实验规范简介阐明:液晶显示屏LCD(liquid crystal display)为一种显示屏,基本原理为,将液晶封在玻璃箱中,然后施以电极使之产生冷热变化,而因此影响它旳透光性,来达到明灭旳效应。

目前常用旳液晶显示装置有扭转向列型(Twisted Nematic, TN)、超扭转向列型(Super Twisted Nematic, STN)、DSTN(Double layer TN)与彩色薄膜型(Thin Film Transistors, TFT),前三种之制造基本原理皆相似,成为被动式矩阵液晶,而TFT 则较为复杂,因保有记忆性,而称为积极式矩阵液晶。

由于液晶显示屏具有占空间小、面板厚度薄、重量轻、可平面直角显示、耗电量低、无电磁波辐射、无热辐射等优越性,使之逐渐取代老式CRT影像管监视器。

LCD显示屏基本上一共有四种显示方式:反射式、反射透射转换式、投射式、透射式。

(1).反射式基本上液晶显示屏自身不发光,借着所处空间中旳光源射入LCD板中,再由其反射板将光线反射到人旳眼中;(2).反射透射转换式则是空间中光源充足时可当成反射式,而空间中光线不够时则运用内藏之光源作为照明;(3).投射型是运用类似电影播放原理,运用投射光学系将液晶显示屏所显示出来旳影像投影到远程较大旳屏幕上;(4).透射式液晶显示屏则完全运用内藏之光源当作照明。

⊙实测&待测品照片:⊙实测&待测品照片:项目温度时间其他PGM狟婥高温存储60℃,30%RH120 小时批注1l-01.pgm 低温存储-20℃120 小时批注1l-02.pgm 高温高湿40℃,95%RH (不侵润)120小时批注1l-03.pgm 高温工作40℃,30%RH.120小时原则电压l-04.pgm温度冲击-20℃(30分钟)↓25℃(10分钟)↓20℃(30分钟)↓25℃(10分钟)10cycle批注1l-05.pgm机械振动--频率:5-500hz, 加速度:1.0g,振幅:1.0mm, 持续时间:15mins,在X,Y,Z方向上各进行两次。

单片机MicroSD以及TFT液晶显示实验报告

实验九MicroSD卡操作实验程序流程:时钟初始化-->SSI初始化-->液晶初始化-->UART初始化--> 接收UART命令help,cat,ls等-->处理命令(nStatus = CmdLineProcess(g_cCmdBuf);)-->判断nStatus是否为0,如果为0正常运行程序输出结果并重新接收命令,否则的话输出相应的错误提示并重新接收命令。

总的来说,我们在串口调试软件发送窗口输入一个命令后点击发送到单片机,单片机开始处理命令,并把结果通过端口发送到软件的接收数据窗口。

程序注释(按住ctrl点击这里到实验十):uint32_t g_ui32SysClock;#define PATH_BUF_SIZE 80 //定义缓冲区大小,用来保存路径#define CMD_BUF_SIZE 64 //定义命令行的缓冲区大小static char g_cCwdBuf[PATH_BUF_SIZE] = "/"; //这个缓冲区保存当前工作目录的完整路径static char g_cTmpBuf[PATH_BUF_SIZE]; //一个临时数据缓冲区操作文件路径时使用,或从SD卡读取数据static char g_cCmdBuf[CMD_BUF_SIZE]; //一个缓冲区用来保存命令行static FATFS g_sFatFs;static DIR g_sDirObject;static FILINFO g_sFileInfo;static FIL g_sFileObject;typedef struct{FRESULT fresult;char *pcResultStr;}tFresultString;#define FRESULT_ENTRY(f) { (f), (#f) }//用于查找错误代码并打印tFresultString g_sFresultStrings[] ={FRESULT_ENTRY(FR_OK),FRESULT_ENTRY(FR_DISK_ERR),FRESULT_ENTRY(FR_INT_ERR),FRESULT_ENTRY(FR_NOT_READY),FRESULT_ENTRY(FR_NO_FILE),FRESULT_ENTRY(FR_NO_PATH),FRESULT_ENTRY(FR_INVALID_NAME),FRESULT_ENTRY(FR_DENIED),FRESULT_ENTRY(FR_EXIST),FRESULT_ENTRY(FR_INVALID_OBJECT),FRESULT_ENTRY(FR_WRITE_PROTECTED),FRESULT_ENTRY(FR_INVALID_DRIVE),FRESULT_ENTRY(FR_NOT_ENABLED),FRESULT_ENTRY(FR_NO_FILESYSTEM),FRESULT_ENTRY(FR_MKFS_ABORTED),FRESULT_ENTRY(FR_TIMEOUT),FRESULT_ENTRY(FR_LOCKED),FRESULT_ENTRY(FR_NOT_ENOUGH_CORE),FRESULT_ENTRY(FR_TOO_MANY_OPEN_FILES),FRESULT_ENTRY(FR_INVALID_PARAMETER)};#define NUM_FRESULT_CODES (sizeof(g_sFresultStrings) / sizeof(tFresultString)) tContext g_sContext;//返回一个错误代码的字符串const char *StringFromFresult(FRESULT fresult){unsigned int uIdx;//进入一个循环从错误代码表中搜索匹配错误代码for(uIdx = 0; uIdx < NUM_FRESULT_CODES; uIdx++){//如果找到匹配项,则返回错误代码的字符串名称if(g_sFresultStrings[uIdx].fresult == fresult){return(g_sFresultStrings[uIdx].pcResultStr);}}//如果没有找到匹配的代码,则返回“UNKNOW ERROR CODE”return("UNKNOWN ERROR CODE");}voidSysTickHandler(void){disk_timerproc();}//这个函数实现了“ls”命令。

lcd显示实验报告

lcd显示实验报告
LCD显示实验报告
实验目的:通过实验,掌握LCD显示屏的工作原理及使用方法,加深对LCD技术的理解。

实验材料:
1. LCD显示屏
2. 控制器
3. 电源适配器
4. 连接线
5. 电脑
实验步骤:
1. 将LCD显示屏与控制器连接,接上电源适配器。

2. 将控制器与电脑连接,确保连接稳固。

3. 打开电脑,进入显示设置,调整分辨率和频率。

4. 查看LCD显示屏是否正常显示。

实验结果:
经过调试,LCD显示屏显示正常,色彩鲜艳,清晰度高。

在不同分辨率和频率下,显示效果均稳定,没有闪烁或失真现象。

实验分析:
LCD显示屏是一种利用液晶材料来显示图像的平面显示器。

其工作原理是通过控制液晶分子的排列来控制光的透过与阻挡,从而显示出图像。

与传统的CRT 显示器相比,LCD显示屏具有体积小、节能、无辐射等优点,因此在现代电子
产品中得到广泛应用。

结论:
通过本次实验,我们深入了解了LCD显示屏的工作原理和使用方法,掌握了LCD显示屏的调试技巧。

这对我们今后的学习和工作都具有重要意义。

希望通过不断的实践和学习,能够更好地掌握LCD技术,为我们的科研和工程项目提供更好的支持。

TFT 液晶显示实验

实验十 TFT 液晶显示实验一、实验目的1. 了解240x400TFT LCD 的工作原理。

2. 了解TFT LCD 控制芯片OTM4001A 的控制方式。

3. 学习并使用数学库IQmathLib.h。

4. 学习TM4C129x Series Cortex-M4 的EPI 总线操作方式。

5. 学习EPI 相关库函数的使用。

二、实验原理1. TFT 彩屏工作原理TFT(Thin Film Transistor)LCD 即薄膜场效应晶体管LCD,是有源矩阵类型液晶显示器(AM-LCD)中的一种。

和TN 技术不同的是,TFT 的显示采用“背透式”照射方式——假想的光源路径不是像TN 液晶那样从上至下,而是从下向上。

这样的作法是在液晶的背部设置特殊光管,光源照射时通过下偏光板向上透出。

由于上下夹层的电极改成FET 电极和共通电极,在FET 电极导通时,液晶分子的表现也会发生改变,可以通过遮光和透光来达到显示的目的,响应时间大大提高到80ms 左右。

因其具有比TN LCD 更高的对比度和更丰富的色彩,荧屏更新频率也更快,故TFT 俗称“真彩”。

LCD 是由二层玻璃基板夹住液晶组成的,形成一个平行板电容器,通过嵌入在下玻璃基板上的TFT 对这个电容器和内置的存储电容充电,维持每幅图像所需要的电压直到下一幅画面更新。

液晶的彩色都是透明的必须给LCD 衬以白色的背光板上才能将五颜六色表达出来,而要使白色的背光板有反射就需要在四周加上白色灯光。

因此在TFT LCD 的底部都组合了灯具,如CCFL 或LED。

2. OTM4001A 控制芯片简介OTM4001A 是一款262144 色,用于中小型TFT LCD 显示屏的片上系统(SoC)驱动芯片,通过指定用于图形数据的RAM 能支持达240xRGBx432 分辨率。

OTM4001A 内部的时序控制器能为不同的需求提供不同接口方式,OTM4001A 提供了系统接口,包括8/9/16/18位并口和SPI 串口方式(本实验采用16 位并口方式);OTM4001A 也提供了6/16/18 位RGB接口,用于动态显示图片。

TFT-LCD显示原理及检测


3.3彩色滤光片(CF)
放大 放大 □
我们知道红色(R)、绿色(G)和蓝色(B)是 所谓的三原色,也就是说利用这三种颜色可 以混合成各种不同的颜色。 彩色滤光片的作用就是使液晶显示器产 生彩色的影像。
3.4 TFT的结构
TFT上的外型结构和CF大致一样,所以CF上每个 画元对应在TFT上都有一个电路结构和它对应.那我们 取出其中的一个来分析.它的俯视等效图如下:
Source line Data line 内 是 液 晶 Drain line vcom Gate line 电容 CS
Scan line
放大
Data line
第四章 点灯检测试验
4.1LCD Quick原理
下面我们作一个概括, 整个panel的点亮过程,必须具备以下几个参数: 1.水源 ---Data 2.总开关---VGG,DGG VGG: Gate侧的总开关 DGG: Data侧的总开关 3.小开关---Vgh,Vgl Vgh: Gate小开关开启的讯号 Vgh(v): Gate voltage high level Vgl: Gate小开关关闭的讯号 Vgl(v): Gate voltage low level
QUICK 驱动电压
10V 0V 10V 0V 两个DOT电压为 左右, 电压为5V左右 两个 Байду номын сангаас压为 左右, 则应该为两个亮点 10V 10V 0V 0V
水位的高低只代 表电压值的高低
4.4 LCD Quick的改进
+ - + + - + + - + + - + + - + + - +
由于B与R之间都是正电压, 所以当它们之间有异物导通时并 未发生电压的转移均分。所以用 上述实验方法无法检测出B与R之 间的横向二连接。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

return t;
} 第四个要介绍的是读取 GRAM 的函数,这里说明一下,为什么 OLED 模块没做读 GRAM 的函数,而这里做了。因为 OLED 模块是单色的,所需要全部 GRAM 也就 1K 个字节,而 TFTLCD
在 ILI93 数进行讲解。完整版的代码见光盘->ALIENTEK MiniSTM32 开发板例程->实验 10 的 ILI93xx.c 文件。
第一个是 LCD_WR_DATA 函数,该函数通过 80 并口向 LCD 模块写入一个 16 位的数据, 使用频率是最高的,这里我们采用了宏定义的方式,以提高速度。其代码如下:
LCD_LED 对应 PC10; LCD_CS 对应 PC9; LCD _RS 对应 PC8; LCD _WR 对应 PC7; LCD _RD 对应 PC6; LCD _D[17:1]对应 PB[15:0]; 这些线的连接,MiniSTM32 的内部已经连接好了,我们只需要将 TFTLCD 模块插上去就 好了。实物连接如下图所示:
3.10 TFTLCD显示实验
上一节我们介绍了 OLED 模块及其显示,但是该模块只能显示单色/双色,不能显示彩色, 这一节我们将介绍 ALIENTEK TFT LCD 模块,该模块采用 TFTLCD 面板,可以显示 16 位色的 真彩图片。本节将利用 TFTLCD 来显示字符和数字,并显示各种颜色。本节分为如下几个部分:
图 3.10.2.2 TFTLCD 与开发板连接实物图
171
3.10.3 软件设计
软件设计我们依旧在之前的工程上面增加,首先在 HARDWARE 文件夹下新建一个 LCD 的文件夹。然后打开 USER 文件夹下的工程,新建一个 ILI93xx.c 的文件和 lcd.h 的头文件,保 存在 LCD 文件夹下,并将 LCD 文件夹加入头文件包含路径。
表 3.10.1.1 ILI9320 常用命令表 R0,这个命令,有两个功能,如果对它写,则最低位为 OSC,用于开启或关闭振荡器。而 如果对它读操作,则返回的是控制器的型号。这个命令最大的功能就是通过读它可以得到控制 器的型号,而我们代码在知道了控制器的型号之后,可以针对不同型号的控制器,进行不同的 初始化。因为 93xx 系列的初始化,其实都比较类似,我们完全可以用一个代码兼容好几个控制 器。 R3,入口模式命令。我们重点关注的是 I/D0、I/D1、AM 这 3 个位,因为这 3 个位控制了 屏幕的显示方向。 AM:控制 GRAM 更新方向。当 AM=0 的时候,地址以行方向更新。当 AM=1 的时候,地 址以列方向更新。 I/D[1:0]:当更新了一个数据之后,根据这两个位的设置来控制地址计数器自动增加/减少 1, 其关系如下图:
#define LCD_WR_DATA(data){\ LCD_RS=1;\ LCD_CS=0;\ DATAOUT(data);\ LCD_WR=0;\ LCD_WR=1;\ LCD_CS=1;\ } 第二个是 LCD_WR_REG 函数,该函数也是通过 80 并口向 LCD 模块写入 8 位的寄存器命 令,因为该函数使用频率不是很高,我们不采用宏定义来做(宏定义占用 FLASH 较多),通过 LCD_RS 来标记是写入命令(LCD_RS=0)还是数据(LCD_RS=1)。该函数代码如下: void LCD_WR_REG(u8 data) {
172
LCD_CS=0; //读取数据(读寄存器时,并不需要读 2 次)
LCD_RD=0;
LCD_RD=1;
t=DATAIN;
LCD_CS=1;
GPIOB->CRL=0X33333333; //PB0-7 上拉输出 GPIOB->CRH=0X33333333; //PB8-15 上拉输出 GPIOB->ODR=0XFFFF; //全部输出高
169
图 3.10.1.5 GRAM 显示方向设置图 通过这几个位的设置,我们就可以控制屏幕的显示方向了。 R7,显示控制命令。该命令 CL 位用来控制是 8 位彩色,还是 26 万色。为 0 时 26 万色, 为 1 时八位色。D1、D0、BASEE 这三个位用来控制显示开关与否的。当全部设置为 1 的时候 开启显示,全 0 是关闭。我们一般通过该命令的设置来开启或关闭显示器,以降低功耗。 R32,R33,设置 GRAM 的行地址和列地址。R32 用于设置列地址(X 坐标,0~239),R33 用于设置行地址(Y 坐标,0~319)。当我们要在某个指定点写入一个颜色的时候,先通过这两 个命令设置到改点,然后写入颜色值就可以了。 R34,写数据到 GRAM 命令,当写入了这个命令之后,地址计数器才会自动的增加和减少。 该命令是我们要介绍的这一组命令里面唯一的单个操作的命令,只需要写入该值就可以了,其 他的都是要先写入命令编号,然后写入操作数。 R80~R83,行列 GRAM 地址位置设置。这几个命令用于设定你显示区域的大小,我们整个 屏的大小为 240*320,但是有时候我们只需要在其中的一部分区域写入数据,如果用先写坐标, 后写数据这样的方式来实现,则速度大打折扣。此时我们就可以通过这几个命令,在其中开辟 一个区域,然后不停的丢数据,地址计数器就会根据 R3 的设置自动增加/减少,这样就不需要 频繁的写地址了,大大提高了刷新的速度。 命令部分,我们就为大家介绍到这里,我们接下来看看要如何才能驱动 ALIENTEK TFTLCD 模块,这里 TFTLCD 模块的初始化和我们前面介绍的 OLED 模块的初始化框图是一样 的,只是初始化代码部分不同。接下来我们也是将该模块用来来显示字符和数字。通过以上介 绍,我们可以得出 TFTLCD 显示需要的相关设置步骤如下: 1)设置 STM32 与 TFTLCD 模块相连接的 IO。 这一步,先将我们与 TFTLCD 模块相连的 IO 口设置为输出,具体使用哪些 IO 口,这里需 要根据连接电路以及 TFTLCD 模块的设置来确定。 2)初始化 TFTLCD 模块。 其实这里就是上和上面 OLED 模块的初始化过程差不多。通过向 TFTLCD 写入一系列的设 置,来启动 TFTLCD 的显示。为后续显示字符和数字做准备。 3)通过函数将字符和数字显示到 TFTLCD 模块上。 这里就是通过我们设计的程序,将要显示的字符送到 TFTLCD 模块就可以了,这些函数将 在软件设计部分向大家介绍。 通过以上三步,我们就可以使用 ALIENTEK TFTLCD 模块来显示字符和数字了, 并且可 以显示各种颜色的背景。
3.10.1 TFTLCD 简介 3.10.2 硬件设计 3.10.3 软件设计 3.10.4 下载与测试
166
3.10.1 TFTLCD 简介
TFT-LCD 即薄膜晶体管液晶显示器。其英文全称为:Thin Film Transistor-Liquid Crystal Display。TFT-LCD 与无源 TN-LCD、STN-LCD 的简单矩阵不同,它在液晶显示屏的每一个象 素上都设置有一个薄膜晶体管(TFT),可有效地克服非选通时的串扰,使显示液晶屏的静态特 性与扫描线数无关,因此大大提高了图像质量。TFT-LCD 也被叫做真彩液晶显示器。
CS:TFTLCD 片选信号。 WR:向 TFTLCD 写入数据。 RD:从 TFTLCD 读取数据。 D[15:0]:16 位双向数据线。 RST:硬复位 TFTLCD。 RS:命令/数据标志(0,读写命令;1,读写数据)。 80 并口在上一节我们已经有详细的介绍了,这里我们就不在介绍,需要说明的是,TFTLCD 模块的 RST 信号线和 OLED 模块一样,也是直接接到 STM32 的复位脚上,并不由软件控制, 这样可以省下来一个 IO 口。另外我们还需要一个背光控制线来控制 TFTLCD 的背光。所以, 我们总共需要的 IO 口数目为 21 个。
168
模块的控制器为 ILI9320,该控制器自带显存,其显存总大小为 172820(240*320*18/8), 即 18 位模式(26 万色)下的显存量。模块的 16 位数据线与显寸的对应关系为 565 方式,如下 图所示:
图 3.10.1.4 16 位数据与显存对应关系图 最低 5 位代表蓝色,中间 6 位为绿色,最高 5 位为红色。数值越大,表示该颜色越深。 接下来,我们介绍一下 ILI9320 的几个重要命令,因为 ILI9320 的命令很多,我们这里不 可能一一介绍,有兴趣的大家可以找到 ILI9320 的 datasheet 看看。里面对这些命令有详细的介 绍。这里我们要介绍的命令列表如下:
图 3.10.1.1 ALIENTEK 2.8 寸 TFTLCD 外观图 模块原理图如下:
167
图 3.10.1.2 ALIENTEK 2.8 寸 TFTLCD 模块原理图 TFTLCD 模块采用 2*17 的 2.54 公排针与外部连接,接口图如下:
图 3.10.1.3 ALIENTEK 2.8 寸 TFTLCD 模块接口图 该接口同目前主流的几款 STM32 开发板的接口完全兼容,所以模块除了用在 ALIENTEK MiniSTM32 开发板上,也可以用在其他开发板上,当然你也可以使用其他接口一样的 LCD 模 块放到我们的 ALIENTEK MiniSTM32 开发板上使用。ALIENTEK TFTLCD 模块采用 80 并口口 方与外部链接,采用 16 位数据线(低了速度太慢,用彩色就没什么效果了)。该模块的 80 并口 有如下一些信号线:
LCD_RS=0;//写地址 LCD_CS=0; DATAOUT(data); LCD_WR=0; LCD_WR=1; LCD_CS=1; } 既然有写命令/数据的函数,那就有读命令/数据的函数。接下来介绍 LCD_ReadReg 函数, 该函数用来读取某个寄存器的值。在读某个寄存器的值之前,先要写入该寄存器的编号(命令 号),然后设置 D[15:0]为输入,在读取该改寄存器的值,读完数据之后,我们再设置 IO 口为输 出。其代码如下: u16 LCD_ReadReg(u8 LCD_Reg) { u16 t; LCD_WR_REG(LCD_Reg); //写入要读的寄存器号 GPIOB->CRL=0X88888888; //PB0-7 上拉输入 GPIOB->CRH=0X88888888; //PB8-15 上拉输入 GPIOB->ODR=0XFFFF; //全部输出高 LCD_RS=1;
相关文档
最新文档