(1)硬體介面
①要明白rgb888控制lcd 和8080控制方式的區別:
tft液晶顯示器使用的是rgb介面,rgb介面包含24根rgb訊號線、畫素同步訊號線、水平同步訊號線、垂直同步訊號線和資料使能訊號線。②rgb:效能一般的晶元,通常不會自帶液晶控制器,需要使用自帶液晶控制器器的液晶屏,這類觸控螢幕通常使用ili9341型號的液晶控制晶元。
stm32可以 通過 8080 介面傳送命令編碼控制 ili9341 的工作方式,例如復位指令、設定游標指令、睡眠模式指令等等,具體的指令在ili9341資料手冊均有詳細說明
rgb565 就是r-5bit,g-6bit,b-5bit
rgb555 就是r-5bit,g-5bit,b-5bit
rgb888 就是r-8bit,g-8bit,b-8bit ;其實這就是rgb24
也就是說正常情況下 stm32 f103 或者f 407 都是通過fsmc 來模擬8080控制方式操作ili9341.
然後ili9341通過rgb8888控制lcd。
但是stm32f429 自帶了rgb lcd 外設介面 ltdc,為其直接控制lcd提供了方便。(理論上可以)
(本人使用的方案是stm32f429 使用ltdc介面 控制ili9806(2)stm32f429 自帶了rgb lcd 外設介面
特點:ltdc 可以來直接驅動 rgblcd 使用,另外其配備了專用的影象處理的 dma2dma 硬體加速。
參考資料:安富來v6開發板。
使用cubemx 生產引腳配置。
ltdc 介面需要
參考:(3)stm32f429 也可以使用常規介面fsmc 控制lcd
參看資料:硬石開發板提供的教程其他資料:在使用ili9806g 時候需要使用spi對該晶元初始化一下。原理:我們使用fsmc來控制 lcd,將tftlcd 當作sram來控制。
那我們如何通過fsmc來控制我們的lcd呢?
fsmc控制nor flash 介面
可以看出前4中線完全一樣,僅在8080的資料和命令選擇時候和fsmc的有區別,此時為了模擬將fsmc的位址a0,接在8080的rs,當a0為0 tftlcd 就是寫指令,a0為1 寫資料。
舉個例子,當向位址為 0x6*** ***1、0x6*** ***3 的奇數字址寫入資料時,位址線 a0(rs)為高電平,這個資料被理解為
數值;若向 0x6*** ***0、0x6*** ***2 這些偶數字址寫入資料時,位址線 a0(rs)為低電平,這個資料被理解為命令。這樣,就可以區分開資料和命令了。
驅動程式:
STM32F429 如何使用SDRAM
關於stm32f429 控制sdram fmc 擴充套件外部sdram 1 原理介紹 為什麼是fmc 不是 fsmc 區別在那裡!stm32f429使用fmc外設來管理擴充套件的儲存器,fmc是flexible memory controller的縮寫,譯為可變儲存控制器。它可以用於驅動包括sram...
STM32F429 如何使用NAND Flash
1 原理介紹 flash即是儲存晶元的一種,其結合了rom和ram的特點,既具備電可擦除程式設計的效能,又可以快速讀取資料,資料不會因斷電丟失。目前市面上flash主要有nor flash和nand flash。nor flash具有隨機訪問和隨位元組執行寫操作的能力,即可以訪問到儲存器內部的任意乙...
STM32F429 如何使用SDRAM
origin 關於stm32f429 控制sdram fmc 擴充套件外部sdram 1 原理介紹 為什麼是fmc 不是 fsmc 區別在那裡!stm32f429使用fmc外設來管理擴充套件的儲存器,fmc是flexible memory controller的縮寫,譯為可變儲存控制器。它可以用於驅...