LVGL適配
環境
STM32 H7
大體步驟
1.lvgl軟件包添加
把對應的文件,復制到app里面
編譯會報錯,原因是需要添加幾個文件,需要把頭文件指向這里
再編譯,就沒問題了
2.cubemx配置ltdc,rcc,clock,mpu
這塊比較簡單,按照keil里面的配置來設置。最后吧生成的代碼和keil的代碼對比一下。
MPU_Config():
SCB_EnableICache(); SCB_EnableDCache():
使用以下來替換
SystemClock_Config
對比發現,keil里面多了LTDC的初始化,這個難不倒我們,ltdc通過cubemx配置后,就有對應的初始化操作。按常規流程,把初始化內容放到borad.c中即可。
至此,保證,rcc,clock,mpu,ltdc的初始化能在rtt初始化內完成,即可。
3.移植內容
lv_port_disp.c
lv_conf.h
配置好。這塊網上比較多,對著操作就行。
最后需要注意,背光要打開。
app里面的main,lv的demo最好放到線程里面
完成屏幕顯示方面的移植,后續進行觸摸方向移植。
觸摸比較簡單,這塊屏幕是iic接口
lv_port_indev.h中的if 0打開
lv_port_indev.c中的除了touchpad開放,其他關閉
touchpad_init,touchpad_read,touchpad_is_pressed,touchpad_get_xy適配
最終效果
總結
花了一段時間把 stm32 h7 + cubemx + lvgl + 觸摸搞定
主要有keil代碼加持,移植起來比較方便,梳理通流程后,移植起來有思路,知道查資料方向
完成內容
內部flash有一個簡單boot,跳轉到外部flash上
時鐘,mpu,dma2d這塊通過cubemx配置
ltdc這塊通過cubemx配置
觸摸,gpio模擬iic,cubemx把gpio占住,統一到cubemx能看到
-
MPU
+關注
關注
0文章
374瀏覽量
48884 -
IIC接口
+關注
關注
0文章
23瀏覽量
11719 -
RTThread
+關注
關注
8文章
132瀏覽量
40955 -
STM32H7
+關注
關注
0文章
7瀏覽量
3833 -
LVGL
+關注
關注
1文章
90瀏覽量
3021
發布評論請先 登錄
相關推薦
評論