1. LCD/LCM的基本概念
液晶显示器(Liquid Crystal Display:LCD)的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。 LCM(LCD Module)即LCD显示模组、液晶模块,是指将液晶显示器件,连接件,控制与驱动等外围电路,PCB电路板,背光源,结构件等装配在一起的组件。
在平时的学习开发中,我们一般使用的是LCM,带有驱动IC和LCD屏幕等多个模块。
2. FSMC的基本概念 在STM32上开发LCD显示,可以有两种方式来对LCD进行操作,一种是通过普通的IO口,连接LCM的相应引脚来进行操作,第2种是通过FSMC来进行操作。
可变静态存储控制器(Flexible Static Memory Controller: FSMC)是STM32系列中内部集成256 KB以上FlaSh,后缀为xC、xD和xE的高存储密度微控制器特有的存储控制机制。之所以称为“可变”,是由于通过对特殊功能寄存器的设置,FSMC能够根据不同的外部存储器类型,发出相应的数据/地址/控制信号类型以匹配信号的速度,从而使得STM32系列微控制器不仅能够应用各种不同类型、不同速度的外部静态存储器,而注意:FSMC只是提供了一个控制器,并不提供相应的存储设备,至于外设接的是什么设备,完全是由用户自己选择,只要能用于FSMC控制,就可以,像本次实验中,我们接的就是LCM。
3. 本例中FSMC的使用 由于本例只是利用FSMC对LCM进行操作,因此不用完全懂得FSMC的所有功能,而是懂得一部分相应的操作即可。
4. ILI9341
驱动IC为ILI9341,芯片被封装在LCD内
5.X,Y的大小为像素大小
6.如果分辨率为240*320
while(1)
{
LCD_Clear(YELLOW);
LCD_ShowxNum(220,300,5,3,16,1);\\LCD_ShowxNum(u16 x,u16 y,u32 num,u8 len,u8 size,u8 mode)
}
size为16*16此时len为3,横距离为239,所以刚好在范围内。
若此时len为4,则LCD屏上不显示数字5.
7.代码中最重要的为LCD_Init代码
总结:
1.LCD:LCD同样和WIFI模块一样,内部用芯片驱动。
2.FSMC:STM32的FSMC真是一个万能的总线控制器,不仅可以控制SRAM,NOR FLASH,NAND FLASH,PC Card,还能控制LCD,TFT.
3.像素分辨率:对像素以及字体的size是位数的理解加深
参考网站:http://www.51hei.com/bbs/dpj-37037-1.html
http://blog.csdn.net/wwt18811707971/article/details/74935578?locationNum=5&fps=1