【RT-Thread作品秀】基于 lvgl 的漏電保護(hù)裝置校驗(yàn)儀 UI 界面設(shè)計
作者:趙加文
概述
低壓漏電引起的各種安全事故已經(jīng)嚴(yán)重影響到生產(chǎn)生活,威脅到生命財產(chǎn)安全。而解決這一現(xiàn)象的設(shè)備就是漏電保護(hù)開關(guān),漏電保護(hù)開關(guān)的漏報率、誤報率是很關(guān)鍵的參數(shù),因此有必要對漏電保護(hù)開關(guān)的性能進(jìn)行測試。因此,漏電保護(hù)裝置校驗(yàn)儀是很有必要的。
開發(fā)環(huán)境
硬件:ART-Pi 開發(fā)板,正點(diǎn)原子 480*272 4.3寸 RGB 屏幕
RT-Thread版本:4.0.3
開發(fā)工具及版本:
RT-Thread Studio 2.0.0 :編寫 編譯 調(diào)試 下載代碼
STM32CubeMX 6.1.0:
codeBlocks 20.03:用于在 PC 機(jī)上進(jìn)行 lvgl 模擬
MCU_Font V2.0: 用于轉(zhuǎn)換中文,然后使得中文能夠在 lvgl 中顯示
RT-Thread使用情況概述
在 UI 設(shè)計的整個過程中,使用到 RT-Thread 的部分主要有以下幾個方面:
內(nèi)核部分: 動態(tài)線程,信號量
組件部分: PIN 設(shè)備、I2C 設(shè)備、TOUCH 設(shè)備框架、LCD 設(shè)備框架、finsh 組件
軟件包部分:littlevgl2rtt、gt9147
硬件框架
軟件框架說明
系統(tǒng)整體流程圖:
軟件模塊說明
整個UI 系統(tǒng)設(shè)計所遵循的是 lvgl 圖形庫的一個回調(diào)函數(shù)的機(jī)制,將各個事件與對應(yīng)的操作所綁定起來,當(dāng)滑動滑條時對應(yīng)的滑條的回調(diào)函數(shù)就會被觸發(fā),那么就會執(zhí)行滑條回調(diào)函數(shù)的內(nèi)容,當(dāng)滑動點(diǎn)擊文本框時,文本框?qū)?yīng)的回調(diào)函數(shù)就會被觸發(fā),進(jìn)而創(chuàng)建鍵盤的控件,通過鍵盤輸入所需要的數(shù)據(jù)。
演示效果
圖片展示:
演示視頻:
比賽感悟
這次參賽,之前還沒有使用過 RT-Thread studio 這個集成開發(fā)環(huán)境,這次在使用 ART-Pi 的時候全程是使用 RT-Thread studio 這個開發(fā)環(huán)境,在使用的過程中也碰到了很多問題,有時候明明配置了相關(guān)組件,但是保存之后,并沒有代碼添加到工程里?,F(xiàn)在也沒有弄明白問題出在哪里,雖然存在著這里問題,但是在使用的過程中,還是非常的方便,整個開發(fā)過程就如同搭積木一樣方便,與 RTT操作系統(tǒng)貼合的非常的緊密。
除此之外,便是在使用 lvgl 的過程中碰到了很多的問題,現(xiàn)在網(wǎng)上的教程基本是 lvgl v6 版本的教程,關(guān)于 lvgl v7 版本的教程很少,而且 v6版本與 V7 版本的 API 相差很大,不能按照 V6 版本來使用 V7 ,在這個過程中摸索了好多,同時也感受到了 lvgl 的魅力,使用在嵌入式系統(tǒng)上是非常不錯的選擇。