移動(dòng)端
方案網(wǎng)小程序
方案網(wǎng)手機(jī)端
加小編微信入群
發(fā)布成功
贊賞金額:
支付金額:5元
支付方式:
贊賞成功!
你的贊賞是對(duì)作者最大的肯定~?
STM32簡(jiǎn)介
STM32 是基于ARM 內(nèi)核Cortex-M3 的32 位微控制器系列。Cortex-M3內(nèi)核是為低功耗和價(jià)格敏感的應(yīng)用而專(zhuān)門(mén)設(shè)計(jì)的,具有突出的能效比和處理速度。通過(guò)采用Thumb-2 高密度指令集,Cortex-M3 內(nèi)核降低了系統(tǒng)存儲(chǔ)要求,同時(shí)快速的中斷處理能夠滿足控制領(lǐng)域的高實(shí)時(shí)性要求,使基于該內(nèi)核設(shè)計(jì)的STM32 系列微控制器能夠以更優(yōu)越的性價(jià)比,面向更廣泛的應(yīng)用領(lǐng)域。
TFT彩屏模塊工作原理
液晶屏的控制芯片電路非常復(fù)雜。GRAM 中一個(gè)存儲(chǔ)單元對(duì)應(yīng)顯示屏的一個(gè)像素點(diǎn)。芯片內(nèi)部有電路把GRAM存儲(chǔ)單元的數(shù)據(jù)轉(zhuǎn)化成液晶屏的控制信號(hào),使每個(gè)點(diǎn)呈現(xiàn)特定的亮度和顏色,而這些點(diǎn)組合起來(lái)則成為顯示界面。ILI9341 里有主要配置引腳和控制信號(hào)線,可以根據(jù)它的設(shè)置使芯片工作在不同的模式。
MUC通過(guò)SPI或8080接口與ILI9341進(jìn)行通信,從而訪問(wèn)它的地址計(jì)數(shù)器(AC)、控制寄存器(CR)、GRAM及一個(gè)LED控制器。LCD本身不會(huì)發(fā)光,它需要借助背光源才實(shí)現(xiàn)顯示功能,LED控制器就是用來(lái)控制液晶屏模塊中發(fā)光二級(jí)管的背光源。LI9341使用8080通信時(shí)序工作,ILI9341的8080接口有5條控制信號(hào)線:寫(xiě)使能信號(hào)線WRX,讀使能信號(hào)線RDX,復(fù)位信號(hào)線RESX,片選信號(hào)線CSX,區(qū)分?jǐn)?shù)據(jù)和命令信號(hào)線D/CX.除了控制信號(hào),還有數(shù)據(jù)信號(hào)線。
方案總體硬件設(shè)計(jì)
方案以STM32F103VE 芯片的FSMC接口連接RGB接口數(shù)字屏,并利用DMA 從片外FLASH 讀取顯示數(shù)據(jù)。DMA即直接內(nèi)存存取,CPU只需配置DMA相關(guān)的寄存器后,DMA 控制器就會(huì)自動(dòng)將數(shù)據(jù)從一個(gè)地址傳送到另外一個(gè)地址,不占用CPU 時(shí)間。本文采用STM32F103VE 芯片外部連接FLASH 用作顯存,其整體硬件方案如圖1所示。
軟件設(shè)計(jì)
本設(shè)計(jì)的軟件主要有硬件層配置和顯示驅(qū)動(dòng)函數(shù)。硬件層配置主要是對(duì)STM32 的I/O 口的輸入/輸出和FSMC 相關(guān)的寄存器配置。顯示驅(qū)動(dòng)函數(shù)主要是向TFT彩屏發(fā)送控制命令和數(shù)據(jù),另外還有一些簡(jiǎn)單的畫(huà)圖函數(shù)。
1、FSMC簡(jiǎn)介
FSMC是靈活靜態(tài)存儲(chǔ)控制器。STM32芯片可利用FSMC 控制NOR FLASH、PSRAM 和NAND FLASH 存儲(chǔ)芯片[3].這里,只使用FSMC 的NOR/PSRAM 模式控制LCD,所以只需分析NOR FLASH 控制信號(hào)線部分。
STM32 尋址空間的地址映射中的0×60000000 ~0x6FFFFFFF 是分配給PSRAM、NOR FLASH 這類(lèi)可直接尋址的器件。當(dāng)外部接了NOR FLASH,并且FSMC外設(shè)被設(shè)置為正常工作,當(dāng)向0×60000000 地址寫(xiě)入數(shù)據(jù)0xFFFF,FSMC會(huì)自動(dòng)把數(shù)據(jù)轉(zhuǎn)化成各信號(hào)線上相應(yīng)的電平信號(hào)寫(xiě)入數(shù)據(jù)。
2、采用FSMC模擬8080時(shí)序
FSMC寫(xiě)NOR 時(shí)序跟8080接口的時(shí)序是十分相似的,對(duì)它們的信號(hào)線對(duì)比如表1所示:
結(jié)語(yǔ)
本文對(duì)基于STM32的TFT液晶顯示模塊的驅(qū)動(dòng)方法進(jìn)行了探討,設(shè)計(jì)的硬件電路和軟件能對(duì)顯示控制芯片ILI9341進(jìn)行有效的控制,所有程序均在STM32系列的軟件編譯環(huán)境下調(diào)試通過(guò)。經(jīng)實(shí)際證明,本方案是可行的,能保證320×240 點(diǎn)陣的TFT 刷新率,且留有足夠CPU時(shí)間給用戶程序。其硬件電路結(jié)構(gòu)簡(jiǎn)單、控制方式靈活、對(duì)于其他型號(hào)的接口芯片也有參考價(jià)值。