?開發(fā)板簡介
創(chuàng)龍科技 TL3576-EVM 是一款基于瑞芯微 RK3576J/RK3576高性能處理器設(shè)計的4核ARM Cortex-A72 +4核 ARM Cortex-A53 + ARM Cortex-M0 國產(chǎn)工業(yè)評估板,Cortex-A72 核心主頻高達 2.2GHz,Cortex-A53 核心主頻高達 2.0GHz。評估板由核心板和評估底板組成,核心板 CPU、ROM、RAM、電源、晶振、連接器等所有元器件均采用國產(chǎn)工業(yè)級方案,國產(chǎn)化率100%。同時,評估底板大部分元器件亦采用國產(chǎn)工業(yè)級方案,國產(chǎn)化率約為 99%(按元器件數(shù)量占比,數(shù)據(jù)僅供參考)。核心板經(jīng)過專業(yè)的PCBLayout 和高低溫測試驗證,質(zhì)量穩(wěn)定可靠,可滿足各種工業(yè)應用環(huán)境要求。
評估板硬件資源圖解1
評估板硬件資源圖解2
?
前 言
本文主要基于評估板演示LVGL應用開發(fā)案例,適用開發(fā)環(huán)境如下。
Windows開發(fā)環(huán)境:Windows 7 64bit、Windows 10 64bit
Linux開發(fā)環(huán)境:VMware16.2.5、Ubuntu22.04.5 64bit
U-Boot:U-Boot-2017.09
Kernel:Linux-6.1.115
LinuxSDK:LinuxSDK-[版本號](基于rk3576_linux6.1_release_v1.1.0)
LVGL的版本:9.1
本文默認使用USB TO UART0作為調(diào)試串口,使用Linux系統(tǒng)啟動卡(即SD啟動卡,Micro SD方式)啟動系統(tǒng)。
我司提供的文件系統(tǒng)默認已支持LVGL官方案例,案例源碼介紹如下。
圖 1
圖 2
LVGL簡介
概述
LVGL(Light and Versatile Graphics Library,輕巧而多功能的圖形庫),是一個免費開源嵌入式圖形庫,主要用于在嵌入式系統(tǒng)上創(chuàng)建圖形用戶界面(GUI)。它是用C語言編寫的,旨在高效和可定制,因此在各種微控制器平臺和顯示硬件上開發(fā)用戶界面時備受歡迎。
特性
輕量級:LVGL旨在輕量且高效,適用于資源受限的嵌入式系統(tǒng),這些系統(tǒng)具有有限的內(nèi)存和處理能力。
高度可定制:LVGL允許開發(fā)人員根據(jù)項目要求定制GUI元素的外觀和行為。
小部件庫:它提供了各種預設(shè)計的圖形小部件,如按鈕、標簽、滑塊、列表等,以簡化交互式用戶界面的創(chuàng)建。
事件驅(qū)動:LVGL是事件驅(qū)動的,這意味著它會響應用戶輸入和其他事件以觸發(fā)操作或狀態(tài)更改。
硬件支持:LVGL支持各種顯示和輸入硬件,包括不同類型的顯示器(TFT、OLED等)和輸入設(shè)備(觸摸屏、按鈕等)。
積極的社區(qū):LVGL有一個積極而支持性的社區(qū),為其開發(fā)提供了資源并提供開發(fā)人員幫助。
跨平臺:LVGL可以在各種微控制器平臺上使用,適用于各種嵌入式系統(tǒng)。
更多詳情請查看:LVGL — Light and Versatile Embedded Graphics Library、LVGL Forum - Q&A about LVGL。
LVGL案例演示
案例說明
案例功能:程序基于LVGL實現(xiàn)通過button控件控制LED燈亮滅以及l(fā)abel控件顯示LED燈的亮滅狀態(tài)。
程序原理:
基于LVGL框架。
通過創(chuàng)建按鈕,設(shè)置點擊事件,調(diào)用回調(diào)函數(shù),控制LED1、LED2的亮滅。
使用label來顯示顏色及文本表示LED1、LED2的亮滅狀態(tài)。
程序流程如下圖所示。
圖?3
案例相關(guān)資料位于產(chǎn)品資料“4-軟件資料Demoplatform-demoslvgl-demos”目錄下,具體說明如下:
案例測試
本案例使用HDMI顯示屏進行演示,請使用HDMI線將HDMI顯示屏與評估板HDMI OUT接口連接,同時將鼠標與評估板USB2.0 HOST(USB2)雙層任一接口連接。
輸入設(shè)備配置
通過設(shè)置LV_INPUT_EVENT_ID環(huán)境變量可以指定程序使用哪種輸入設(shè)備,輸入設(shè)備可為鼠標或觸摸屏。
評估板上電啟動后,請執(zhí)行如下命令查看輸入事件。
Target# evtest
圖 4
根據(jù)打印信息可知,"/dev/input/event11"為鼠標事件。
請執(zhí)行如下命令,設(shè)置LV_INPUT_EVENT環(huán)境變量,指定程序的輸入設(shè)備,本次命令以指定觸摸事件為例。
Target# export LV_INPUT_EVENT_ID=11
備注:LV_INPUT_EVENT_ID=11表示設(shè)置輸入事件路徑為"/dev/input/event11"。
圖 5
顯示設(shè)備配置
通過設(shè)置LV_INPUT_EVENT_ID環(huán)境變量可以指定程序使用何種顯示設(shè)備。
評估板上電啟動后,請執(zhí)行如下命令查看顯示設(shè)備的CONNECTOR_ID。
Target# modetest
圖 6
根據(jù)打印信息可知,HDMI對應的CONNECTOR_ID為180。執(zhí)行如下命令,設(shè)置LV_INPUT_EVENT環(huán)境變量指定程序的顯示設(shè)備,本次命令以指定HDMI顯示為例。
Target# export LV_DRM_CONNECTOR_ID=180
備注:LV_DRM_CONNECTOR_ID=180:表示設(shè)置CONNECTOR_ID為180。
圖 7
完成輸入設(shè)備、顯示設(shè)備的配置后,請將案例bin目錄下的可執(zhí)行程序拷貝至評估板文件系統(tǒng)任意目錄下,在可執(zhí)行程序所在路徑下,執(zhí)行如下命令,運行程序。可觀察到HDMI顯示屏顯示LED控制界面,可通過鼠標點擊界面控制LED亮滅。
Target# LV_DRM_CONNECTOR_ID=180 LV_INPUT_EVENT_ID=11 ./lvgl_led_control
圖 8
圖 9
圖 10
案例編譯
將案例src源碼目錄拷貝至Ubuntu工作目錄下,進入源碼目錄,執(zhí)行如下命令,修改CMakeLists.txt文件,確保"SDK_PATH"為LinuxSDK安裝路徑,用戶請根據(jù)實際情況修改。如下圖所示。
Host# vimCMakeLists.txt
圖 11
修改內(nèi)容如下:
set(SDK_PATH /home/tronlong/RK3576/rk3576_linux6.1_release)
圖 12
執(zhí)行如下命令,加載編譯環(huán)境。
Host# source /home/tronlong/RK3576/rk3576_linux6.1_release/buildroot/output/rockchip_rk3576/host/environment-setup
圖 13
執(zhí)行如下命令,創(chuàng)建編譯目錄并編譯,編譯完成將會在同一個目錄下生成可執(zhí)行程序。
Host# mkdir build
Host# cd build
Host# cmake ..
Host# make
圖 14
由于篇幅過長等原因,部分內(nèi)容均不逐一展示,如需獲取完整版詳細資料,請關(guān)注創(chuàng)龍科技微信公眾號或官網(wǎng),或者評論區(qū)留言,感謝您的支持!
審核編輯 黃宇
-
嵌入式
+關(guān)注
關(guān)注
5146文章
19598瀏覽量
316240 -
開發(fā)板
+關(guān)注
關(guān)注
25文章
5622瀏覽量
103595 -
rk3576
+關(guān)注
關(guān)注
1文章
162瀏覽量
652
發(fā)布評論請先 登錄
全國產(chǎn)!瑞芯微 RK3576 ARM 八核 2.2GHz 工業(yè)開發(fā)板—Linux應用開發(fā)手冊

全國產(chǎn)!瑞芯微 RK3576 ARM 八核 2.2GHz 工業(yè)開發(fā)板—Linux開發(fā)環(huán)境搭建

全國產(chǎn)!瑞芯微 RK3576 ARM 八核 2.2GHz 工業(yè)開發(fā)板—Linux系統(tǒng)使用手冊

基于瑞芯微RK3576國產(chǎn)ARM八核2.2GHz A72 工業(yè)評估板——Docker容器部署方法說明

國產(chǎn)!瑞芯微3576-Mini(8核2.2GHz)工業(yè)評估板規(guī)格書

瑞芯微RK3576,8核2.2GHz+6T算力NPU工業(yè)核心板說明書

評論