0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

LVGL前臺(tái)程序開(kāi)發(fā)相關(guān)操作介紹

瑞薩MCU小百科 ? 來(lái)源:瑞薩MCU小百科 ? 2025-01-23 13:47 ? 次閱讀

13.5.5 “+”按鈕的操作

1.“+”按鈕的回調(diào)函數(shù)

點(diǎn)擊如下按鈕時(shí),會(huì)增加“點(diǎn)”:

a19b8740-d93f-11ef-9310-92fbcf53809c.png

在界面里會(huì)得到如下圖所示的新控件:

a1bcdd6e-d93f-11ef-9310-92fbcf53809c.png

點(diǎn)擊“+”按鈕時(shí)它的回調(diào)函數(shù)“add_new_item_event_handler”被調(diào)用,這個(gè)回調(diào)函數(shù)在“l(fā)v_modbus_tool”函數(shù)中被設(shè)置,代碼如下:

a1df7df6-d93f-11ef-9310-92fbcf53809c.png

“add_new_item_event_handler”函數(shù)代碼如下:

a1f3e124-d93f-11ef-9310-92fbcf53809c.png

它調(diào)用“add_new_item”函數(shù)為“點(diǎn)”創(chuàng)建控件,此函數(shù)在前面分析過(guò),不再贅述。

2.通過(guò)RPC通知后臺(tái)程序添加點(diǎn)

上圖中第2個(gè)參數(shù)為“-1”,表示要?jiǎng)?chuàng)建一個(gè)新點(diǎn):這會(huì)導(dǎo)致“rpc_add_point”函數(shù)被調(diào)用,代碼如下:

a202c360-d93f-11ef-9310-92fbcf53809c.png

13.5.6 “Setting”按鈕的操作

1.創(chuàng)建配置界面

點(diǎn)擊“Setting”按鈕,會(huì)彈出一個(gè)配件界面:

a232c3b2-d93f-11ef-9310-92fbcf53809c.png

可以在配置界面里設(shè)置“點(diǎn)”的信息:使用哪個(gè)串口、串口參數(shù)設(shè)置、設(shè)備地址、寄存器地址、寄存器類別。

這個(gè)配置界面在何時(shí)被創(chuàng)建?在“add_new_item”函數(shù)中創(chuàng)建:

a240a900-d93f-11ef-9310-92fbcf53809c.png

最底層:

a2604918-d93f-11ef-9310-92fbcf53809c.png

“[0]”表示第1層的第0個(gè)控件:

a27f94d0-d93f-11ef-9310-92fbcf53809c.png

“[0-0]”表示第2層的第0個(gè)控件:

a2a2d148-d93f-11ef-9310-92fbcf53809c.png

其他代碼都是類似的,不再贅述。

2.顯示配置界面

點(diǎn)擊“Setting”按鈕時(shí)它的回調(diào)函數(shù)“show_conf_event_handler”被調(diào)用,這個(gè)回調(diào)函數(shù)在“add_new_item”函數(shù)中被設(shè)置,代碼如下:

a2cd47de-d93f-11ef-9310-92fbcf53809c.png

“show_conf_event_handler”函數(shù)代碼如下:

a2ec2a00-d93f-11ef-9310-92fbcf53809c.png

配置界面如下:

a2fa98ba-d93f-11ef-9310-92fbcf53809c.png

3.配件界面的“OK”按鈕的回調(diào)函數(shù)

當(dāng)設(shè)置好各類參數(shù)后,點(diǎn)擊“OK”按鈕將會(huì)調(diào)用它的回調(diào)函數(shù)“com_conf_opt_btn_event_handler”,這個(gè)回調(diào)函數(shù)在“配置頁(yè)面的創(chuàng)建函數(shù)com_or_ip_conf_page_init”中被設(shè)置,代碼如下:

a30fb394-d93f-11ef-9310-92fbcf53809c.png

“com_conf_opt_btn_event_handler”回調(diào)函數(shù)代碼如下,它僅僅是發(fā)出一個(gè)事件:

a32bbb66-d93f-11ef-9310-92fbcf53809c.png

上圖第1124、1126、1128行,一層一層地找到“Send”按鈕,如下圖:

先在cont2_x中找到它的第2個(gè)child,就是“add_new_item”中給某個(gè)點(diǎn)創(chuàng)建的、占據(jù)66%高度的控件cont2_x_2,對(duì)應(yīng)注釋“[2]”。

再在cont2_x_2中找打它的第6個(gè)child,即控件 cont2_x_2_x,對(duì)應(yīng)“add_new_item”函數(shù)中的注釋“[2-6]”。

最后在cont2_x_2_x中找打它的第1個(gè)child,對(duì)應(yīng)“add_new_item”函數(shù)中的注釋“[2-6-1]”,它就是“Send”按鍵

就可以給“Send”按鍵發(fā)送“MY_LV_EVENT_UPDATE_RPC”事件了。

a34a39a6-d93f-11ef-9310-92fbcf53809c.png

4.“Send”按鈕回調(diào)函數(shù)

對(duì)于“點(diǎn)”,有如下界面:

a370bdec-d93f-11ef-9310-92fbcf53809c.png

上圖界面是使用“add_new_item”函數(shù)創(chuàng)建的,里面的“Send”按鈕回調(diào)函數(shù),如下圖所示:

a383fb5a-d93f-11ef-9310-92fbcf53809c.png

在“Setting”界面點(diǎn)擊“OK”按鈕時(shí),會(huì)給“Send”按鈕發(fā)送“MY_LV_EVENT_UPDATE_RPC”事件。導(dǎo)致“btn_send_event_handler”函數(shù)被調(diào)用,這個(gè)函數(shù)最終會(huì)使用RPC接口修改點(diǎn)的信息,調(diào)用關(guān)系如下圖所示:

a3930d48-d93f-11ef-9310-92fbcf53809c.png

13.5.7 寫(xiě)“點(diǎn)”的操作

在如下界面寫(xiě)入數(shù)值后,點(diǎn)擊“Send”,會(huì)調(diào)用RPC接口寫(xiě)傳感器

a3bd2718-d93f-11ef-9310-92fbcf53809c.png

“Send”按鈕的回調(diào)函數(shù)“btn_send_event_handler”被調(diào)用,它的代碼如下:

a3c4e156-d93f-11ef-9310-92fbcf53809c.png

對(duì)于“0x”、“4x”的寄存器,先寫(xiě)入數(shù)據(jù),再讀出來(lái)。

13.5.8 讀“點(diǎn)”的操作

在如下界面勾選“Period”前面的復(fù)選框,會(huì)周期性地讀點(diǎn):

a3fefd6e-d93f-11ef-9310-92fbcf53809c.png

創(chuàng)建這個(gè)復(fù)選框時(shí)的代碼如下:

a417173c-d93f-11ef-9310-92fbcf53809c.png

當(dāng)勾選“Period”前面的復(fù)選框時(shí),“cb_send_period_event_handler”函數(shù)被調(diào)用:

a440931e-d93f-11ef-9310-92fbcf53809c.png

定時(shí)器的函數(shù)里,向“Send”按鈕發(fā)送“MY_LV_EVENT_READ_PERIOD”事件,代碼如下:

a44e25f6-d93f-11ef-9310-92fbcf53809c.png

“Send”函數(shù)的回調(diào)函數(shù)“btn_send_event_handler”被調(diào)用,它會(huì)使用RPC調(diào)用讀取點(diǎn)的數(shù)值,代碼如下:

a4696cd0-d93f-11ef-9310-92fbcf53809c.png

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3795

    瀏覽量

    81286
  • 函數(shù)
    +關(guān)注

    關(guān)注

    3

    文章

    4345

    瀏覽量

    62865
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4821

    瀏覽量

    68890
  • LVGL
    +關(guān)注

    關(guān)注

    1

    文章

    91

    瀏覽量

    3030

原文標(biāo)題:LVGL前臺(tái)程序開(kāi)發(fā)相關(guān)操作 - RZ MPU工業(yè)控制教程連載(52)

文章出處:【微信號(hào):瑞薩MCU小百科,微信公眾號(hào):瑞薩MCU小百科】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    HMI-Board開(kāi)發(fā)板工程在添加新組件時(shí)LVGL組件會(huì)報(bào)錯(cuò)的解決辦法

    在使用HMI-Board開(kāi)發(fā)開(kāi)發(fā)lvgl的GUI界面設(shè)計(jì)時(shí),可以直接在官方提供的lvgl的demo中開(kāi)發(fā),這樣就可以省去
    的頭像 發(fā)表于 09-13 16:17 ?1611次閱讀
    HMI-Board<b class='flag-5'>開(kāi)發(fā)</b>板工程在添加新組件時(shí)<b class='flag-5'>LVGL</b>組件會(huì)報(bào)錯(cuò)的解決辦法

    LVGL開(kāi)發(fā)入門(mén)教程

    LVGL(Light and Versatile Graphics Library)是一個(gè)開(kāi)源的嵌入式圖形庫(kù),由Gábor Kiss-Vámosi于2016年創(chuàng)建,遵守MIT協(xié)議。目前由來(lái)自世界各地的志愿者共同維護(hù)和開(kāi)發(fā)。
    的頭像 發(fā)表于 01-03 15:23 ?991次閱讀
    <b class='flag-5'>LVGL</b><b class='flag-5'>開(kāi)發(fā)</b>入門(mén)教程

    開(kāi)發(fā)第1個(gè)LVGL程序與實(shí)現(xiàn)按鍵操作

    開(kāi)發(fā)第1個(gè)LVGL程序與實(shí)現(xiàn)按鍵操作
    的頭像 發(fā)表于 01-07 13:49 ?570次閱讀
    <b class='flag-5'>開(kāi)發(fā)</b>第1個(gè)<b class='flag-5'>LVGL</b><b class='flag-5'>程序</b>與實(shí)現(xiàn)按鍵<b class='flag-5'>操作</b>

    LVGL前臺(tái)程序開(kāi)發(fā)相關(guān)操作

    要使用libmodbus操作Modbus RTU傳感器,需要做的事情有2個(gè)。
    的頭像 發(fā)表于 01-17 12:43 ?664次閱讀
    <b class='flag-5'>LVGL</b><b class='flag-5'>前臺(tái)</b><b class='flag-5'>程序</b><b class='flag-5'>開(kāi)發(fā)</b><b class='flag-5'>相關(guān)</b><b class='flag-5'>操作</b>

    前臺(tái)運(yùn)行和后臺(tái)運(yùn)行二者有何區(qū)別

    開(kāi)發(fā)環(huán)境:DeepIn15.11 開(kāi)發(fā)語(yǔ)言:C語(yǔ)言 測(cè)試軟件:Final Shell3.0.10 目錄分清你的程序前臺(tái)運(yùn)行還是后臺(tái)運(yùn)行,二者有何區(qū)別
    發(fā)表于 11-04 08:18

    LVGL的字體相關(guān)資料分享

    前言之前展示過(guò)Luatos在win32上運(yùn)行LVGL的效果,今天帶來(lái)LVGL的字體篇介紹LVGL字體支持很全,支持 UTF-8 編碼的 Unicode 字符,分內(nèi)部字體和外部字體,字體
    發(fā)表于 12-03 07:01

    LVGL工具使用

    文章所有資料以及代碼下載途徑LVGL工具使用:主要介紹下模擬器的使用/電腦組態(tài)軟件(我通常把電腦拖控件軟件叫做組態(tài)軟件)LVGL概念概述:主要對(duì)LVGL的對(duì)象/事件/風(fēng)格/輸入設(shè)備/顯
    發(fā)表于 12-15 07:17

    Purple Pi R1 LVGL使?參考

    LVGL是?個(gè)輕量級(jí)的,開(kāi)源的圖形庫(kù)。本?詳細(xì)介紹了如何在Purple Pi開(kāi)發(fā)板上運(yùn)?lvgl應(yīng)?,同時(shí)介紹了如何使?著名的
    發(fā)表于 09-06 15:25

    全面解讀目前LVGL的應(yīng)用小知識(shí)

    概述 本文介紹目前LVGL的應(yīng)用小知識(shí),希望對(duì)采用MCU設(shè)計(jì)UI界面的用戶有所啟發(fā),開(kāi)發(fā)出界面更友好的消費(fèi)品或者工業(yè)產(chǎn)品,造福大眾。 01. LVGL系統(tǒng)架構(gòu)
    的頭像 發(fā)表于 06-04 12:01 ?3w次閱讀
    全面解讀目前<b class='flag-5'>LVGL</b>的應(yīng)用小知識(shí)

    LuatOS之LVGL字體篇

    前言之前展示過(guò)Luatos在win32上運(yùn)行LVGL的效果,今天帶來(lái)LVGL的字體篇介紹LVGL字體支持很全,支持 UTF-8 編碼的 Unicode 字符,分內(nèi)部字體和外部字體,字體
    發(fā)表于 11-23 17:51 ?13次下載
    LuatOS之<b class='flag-5'>LVGL</b>字體篇

    LVGL系列(二)之二 LVGL常見(jiàn)問(wèn)題解答 整理自官方文檔

    “本文大部分內(nèi)容來(lái)自LVGL官方文檔,手翻版,如有錯(cuò)誤歡迎指正?!毕盗形恼履夸浺弧?b class='flag-5'>LVGL系列(一)一文了解LVGL的學(xué)習(xí)路線輕松了解LVGL的全部二、
    發(fā)表于 11-24 13:36 ?12次下載
    <b class='flag-5'>LVGL</b>系列(二)之二 <b class='flag-5'>LVGL</b>常見(jiàn)問(wèn)題解答 整理自官方文檔

    LVGL 優(yōu)化幀率技巧

    目錄標(biāo)題前文LVGL幀率限制代碼優(yōu)化等級(jí)前文LVGL——PC模擬器仿真模擬+VS2017f429 discovery開(kāi)發(fā)LVGL移植(帶操作
    發(fā)表于 12-07 13:21 ?16次下載
    <b class='flag-5'>LVGL</b> 優(yōu)化幀率技巧

    【飛凌OKA40i-C開(kāi)發(fā)板試用體驗(yàn)】LVGL移植與測(cè)評(píng)

    圖形界面開(kāi)發(fā)工具。不過(guò)對(duì)于簡(jiǎn)單的用戶界面程序,Qt有點(diǎn)殺雞用牛刀的意思。今天介紹一下輕量級(jí)的圖形界面庫(kù)LVGL。LVGL的項(xiàng)目作者是來(lái)自匈牙
    的頭像 發(fā)表于 10-20 10:22 ?4080次閱讀
    【飛凌OKA40i-C<b class='flag-5'>開(kāi)發(fā)</b>板試用體驗(yàn)】<b class='flag-5'>LVGL</b>移植與測(cè)評(píng)

    如何在MDK中部署LVGL

    LVGL的剛剛完成了對(duì)LVGL8的維護(hù)更新,發(fā)布了v8.3.5版。相對(duì)master分支上正在開(kāi)發(fā)LVGL9,該版本是一個(gè)吐血推薦的穩(wěn)定版本。
    的頭像 發(fā)表于 07-27 14:41 ?1373次閱讀
    如何在MDK中部署<b class='flag-5'>LVGL</b>

    LVGL開(kāi)發(fā)指南介紹

    電子發(fā)燒友網(wǎng)站提供《LVGL開(kāi)發(fā)指南介紹.pdf》資料免費(fèi)下載
    發(fā)表于 09-09 10:24 ?17次下載