這裏講下大體的流程,不做具體詳細代碼示例。
TFT LCD的屏幕驅動方式有不少種,以12864來講,通常是直接由SPI來操做屏的驅動IC,再來IC來負責驅動屏幕,還有一個驅動接口如8080或者6800,相對於SPI來講這兩種並口的數據處理方式會提升相應的數據傳輸速度,上述的接口都稱之爲MCU接口。函數
驅動IC中會帶有一個數據存儲空間,稱爲GRAM用於接收屏幕數據,再由驅動模塊將GRAM裏面的數據更新到屏幕之上,通常GRAM不會太大,致使了MCU接口屏通常不會超過3.8寸,對大一些屏幕通常就不採用MCU接口了blog
RGB接口的驅動,屏幕沒GRAM這個存儲空間,而是使用系統內存做爲其顯示的BUFFER,並且刷新速度遠高於MCU接口。對於STM32來講,配置好屏幕的BUFFER存儲空間與LTDC驅動模塊後,用戶只須要更新BUFFER中的數據,LTDC模塊會自動去更新屏幕。接口
一個掃描週期包括一個起始的垂直同步信號,再包括相應行數的水平同步信號。同時二者的信號時鐘單拉也是不同的,不過在配置的時候咱們並不須要關心這個單元,把相應的值對照LCD的規格參數配置好就能夠了。
內存
先是配置好相應的管腳,再配置LTDC將屏幕時序的參數配置進行,再配置BUFFER(由SDRAM或SRAM來存儲)的內存空間,以這樣的方式來驅動屏幕。
而屏幕的底層響應函數就是對BUFFER的賦值,而屏幕的刷新由硬件完成,且速度是固定的。
至於的代碼DEMO須要參考官方的例子文檔