TouchGFX的應用框架如下圖所示:
1.STM32CubeMX配置
STM32CubeMX主要用來配置上面所示的應用框架圖中的硬件抽象層和中間件層
RCC系統(tǒng)時鐘:高速外部時鐘(HSE)配置為外部晶振
由于要使用FreeRTOS操作系統(tǒng),因此建議將HAL庫的Timebase Source從SysTick改為其他定時器,選好定時器后,系統(tǒng)會自動配置TIM,此處設置為TIM7
FMC設置:配置外部SDRAM來作為RGBLCD的顯存,根據(jù)自已的硬件進行參數(shù)以及引腳配置
DMA2D設置:激活DMA2D,配置顏色模式為RGB565,并開啟DMA2D中斷
LTDC參數(shù)設置:根據(jù)使用的屏幕參數(shù)配置LTDC參數(shù)
LTDC層設置:此處選擇使用1層,幀緩存地址設置為SDRAM的首地址0XC0000000
LTDC GPIO引腳設置:根據(jù)具體開發(fā)板的引腳連接,配置GPIO,注意要講輸出速度設置為“Very High”;并開啟LTDC中斷
?
時鐘樹配置:像素時鐘大小為1056*705*60/1024/1024=42M,像素時鐘最大值為42M,此處設置為33M(1056為總寬,705為總高)
背光引腳設置:本文開發(fā)板使用PB5作為背光引腳,設置為推挽輸出
?
激活CRC:TouchGFX需要開啟CRC功能
激活FreeRTOS系統(tǒng):heap大小設置為32768字節(jié),其余默認配置;并添加一個TouchGFX任務
?
選擇Touchgfx組件包
TouchGFX參數(shù)設置:選擇雙緩存,RGB565,開啟DMA2D加速
?
生成工程代碼:最小堆棧大小設置為0X800
STM32CubeMX生成工程后,先不用打開Keil工程。若此時編譯Keil工程,會出現(xiàn)大量報錯
2.TouchGFX Designer界面設計
Keil工程生成后,還需要執(zhí)行Touch Designer來設計UI部分,完善工程 生成工程后,在TouchGFX目錄下有個ApplicationTemplate.touchgfx.part,點擊即可打開TouchGFX Designer
?
拖放一些控件后,點擊Generate Code生成代碼后,TouchGFX相關的代碼就會自動添加進工程中
3. MKD-ARM Keil添加代碼
添加SDRAM驅動源文件和頭文件
在fmc.c文件MX_FMC_Init()函數(shù)中添加SDRAM初始化函數(shù),將外存芯片驅動起來
?
在touchgfxhal.cpp文件中點亮屏幕背光
添加相應任務中,添加TouchGFX處理函數(shù)
4. 下載測試
編譯無誤后,下載到開發(fā)板中
如TouchGFX移植成功,開發(fā)板屏幕會顯示TouchGFX Designer中設計好的界面
審核編輯:劉清
-
RGB
+關注
關注
4文章
796瀏覽量
58336 -
RCC
+關注
關注
0文章
93瀏覽量
26875 -
TouchGFX
+關注
關注
1文章
42瀏覽量
13195 -
STM32F429
+關注
關注
0文章
40瀏覽量
10616 -
stm32cubemx
+關注
關注
5文章
280瀏覽量
14713
原文標題:使用STM32CubeMX移植TouchGFX
文章出處:【微信號:嵌入式攻城獅,微信公眾號:嵌入式攻城獅】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論