FPGA點亮ILI9488驅動的SPI+RGB接口LCD顯示屏
ILI9488 RGB接口初始化
目錄
前言
一、ILI9488簡介
二、3線SPI接口簡介
三、配置寄存器介紹
四、手冊和初始化verilog FPGA代碼
總結
前言
? ? ? ??ILI9488是一款廣泛應用于嵌入式系統和電子設備的彩色TFT LCD顯示控制器芯片。本文將介紹ILI9488先關的基礎知識和ILI9488的寄存器配置,筆者多次閱讀芯片手冊多次調試之后最終成功點亮了一塊分辨率為320*320的ILI9488驅動的TFT LCD顯示屏,見文末提供的點亮視頻。使用的SPI+RGB接口,SPI用來初始化,RGB接口用來傳輸像素值。
提示:以下是本篇文章正文內容,引用請附上鏈接!
一、ILI9488簡介
? ? ? ? ILI9488支持很多接口類型,SPI串行接口,MCU并行接口,RGB接口都支持。像素格式也支持很多種,比如SPI串行接口支持3bit(8k)/18bit像素262k)SPI又分為3線和4線兩種;MCU并行接口與RGB接口均支持16bit(65k)/18bit/24bit像素。
? ? ? ? 下圖是其支持的接口類型與像素格式。
????????下圖是其框圖。?
? ? ? ? 筆者使用的3線SPI+RGB接口,SPI用來完成初始化,RGB用來顯示圖片。
二、3線SPI接口簡介
? ? ? ? 3線SPI接口的數據格式如下圖所示。
????????在接口的寫入模式下,主機將命令和數據寫入ILI 9488。3線串行數據包包含一個D/CX(數據/命令)選擇位和一個傳輸字節。如果D/CX位為“低”,則傳輸字節被解釋為命令字節。如果D/CX位為“高”,則傳輸字節作為顯示數據存儲在EEPROM中,或作為參數數據存儲在命令寄存器中。
? ? ? ? 下圖是傳輸的一個示例:
? ? ? ? 顯示時需要先進行初始化,配置一堆的寄存器,配置時需要發命令和參數,如下圖舉例所示,命令2Ah后面跟了SC、EC四個字節的參數。
? ? ? ? 下圖是三線SPI時序介紹。可見寫的周期最小為66ns,即SPI速率最大不超過15MHz。保守起見建議5MHz以內。
? ? ? ? 其上電首先需要進行復位。
三、配置寄存器介紹
? ? ? ? 需要配置的寄存器很多,這里列舉幾個為例說明一下。
退出睡眠命令,該命令沒有參數。
打開顯示命令,打開顯示后才能正常顯示圖像。
RGB格式設置,注意參數的D3位設置為0,像素數據是RGB排列,設置為1,時BGR排列,正常設置為0即可,里面的其他參數數據手冊也有介紹。
????????需要配置的寄存器很多,可以閱讀手冊學習。下圖是筆者配置的截圖,畫藍色框的地方均是在配置寄存器以完成初始化,需要初始化代碼的自行文末下載,利用手冊參考代碼能快速學會初始化顯示屏。
? ? ? ? 為了驗證初始化是否正確,最后發送了一個23h的命令,顯示白色即成功了。
下圖是初始化完成顯示白屏的畫面。
????????
四、手冊和初始化verilog FPGA代碼
? ? ? ??https://download.csdn.net/download/m0_66360845/90958830https://download.csdn.net/download/m0_66360845/90958830
總結
? ? ? ? 以上就是本文的全部內容,簡單介紹了ILI9488的使用。