帶你了解STM32驅動LCD原理
2021-09-27 18:55:08閱讀量:546
TFTLCD即薄膜晶體管液晶顯示器。它與無源TN-LCD、STN-LCD的簡單矩陣不同,它在液晶顯示屏的每一個像素上都設置有一個薄膜晶體管(TFT),可有效地克服非選通時的串擾,使顯示液晶屏的靜態特性與掃描線數無關,因此大大提高了圖像質量。
▲驅動流程01
1、使用FSMC驅動LCD
關于FSMC,把數據寫入相應的地址,FSMC就會把地址從FSMC_A出去,寫入的數據會會從FSMC_D發出去。至于片選等信號線都是自動的。讀的話,直接讀相應的地址,就會拿到改地址上的數據。
FSMC驅動外部SRAM時,外部SRAM的控制一般有:
-
地址線(如A0~A25)
-
數據線(如D0~D15)
-
寫信號(WE,即WR)
-
讀信號(OE,即RD)
-
片選信號(CS)
如果SRAM支持字節控制,那么還有UB/LB信號。
而TFTLCD的信號包括:RS(命令數據標志位)、D0~D15、WR、RD、CS、RST和BL等,其中真正在操作LCD的時候需要用到的就只有:
-
CS
-
WR
-
RS
-
D0~D15
-
RD
其操作時序和SRAM的控制完全類似,唯一不同就是TFTLCD有RS信號,但是沒有地址信號。
TFTLCD通過RS信號來決定傳送的數據是數據還是命令,本質上可以理解為一個地址信號,比如我們把RS接在A0上面,那么當FSMC控制器寫地址0的時候,會使得A0變為0,對TFTLCD來說,就是寫命令。而FSMC寫地址1的時候,A0將會變為1,對TFTLCD來說,就是寫數據了。這樣,就把數據和命令區分開了,他們其實就是對應SRAM操作的兩個連續地址。當然RS也可以接在其他地址線上。
因此,可以把TFTLCD當成一個SRAM來用,只不過這個SRAM有2個地址,這就是FSMC可以驅動LCD的原理。
8080總線又叫Intel總線,大致來說,Intel總線的控制線有四根,RD寫使能,WR讀使能,ALE地址鎖存,CS片選。
8080中:有RD(read),WR(Write)腳,RD,WR可以同時為高,不能同時為低!!RD為低時表示要從LCD中讀出數據在D0-D7腳上,WR為低時表示:將當前D0-D7上的數據寫入LCD
模塊的8080并口讀/寫的過程為:
先根據要寫入/讀取的數據的類型,設置RS為高(數據)/低(命令),然后拉低片選,選中液晶IC,接著我們根據是讀數據,還是要寫數據置RD/WR為低,然后:
1.讀數據:在RD的上升沿,讀取數據線上的數據(D[15:0]);
2.寫數據:在WR的上升沿,使數據寫入到液晶IC里面;
▲8080并口寫時序
▲8080并口讀時序
在NXP的UsingFlexIO to Drive 8080 Bus Interface LCDModule文檔中同樣也提到了8080接口(P6)
▲寫時序
▲讀時序
3、使用FSMC驅動8080接口
▲讀時序
▲寫時序04
4、顏色模式
每個像素用16比特位表示,占2個字節,RGB分量分別使用5位、6位、5位
4.1RGB888
每個像素用8比特位表示,占1個字節,注意:在內存中RGB各分量的排列順序為:BGRBGR BGR ......
關于ST,可以在立創商城進行下單購買。立創商城是中國領先的現貨元器件交易平臺。100%原裝正品,40萬SKU現貨,4小時閃電發貨!
內容聲明:本文轉載自其它來源,轉載目的在于傳遞更多信息,不代表立創商城贊同其觀點和對其真實性負責,僅作學習與交流目的使用。

LM1117IMPX-3.3/NOPB/線性穩壓器(LDO) | 0.7147 | |
DRV8874PWPR/有刷直流電機驅動芯片 | 3.45 | |
LM358BIDR/運算放大器 | 0.35 | |
LMR33630ADDAR/DC-DC電源芯片 | 2.01 | |
LM5164DDAR/DC-DC電源芯片 | 3.19 | |
ADS1299IPAGR/模擬前端(AFE) | 222.43 | |
TPS82130SILR/DC-DC電源模塊 | 6.13 | |
TPL5010DDCR/定時器/計時器 | 1.0884 | |
LM27762DSSR/電荷泵 | 3.11 | |
TLV9062IDR/運算放大器 | 0.3242 |