<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>
0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【AWTK開源智能串口屏方案】設計UI界面并上傳到串口屏

ZLG致遠電子 ? 2024-02-22 08:24 ? 次閱讀

本篇文章將介紹如何使用AWStudio設計串口屏端的UI界面和添加綁定規則,以及怎么將資源文件上傳到串口屏端。引言:AWTK-HMI是基于AWTK與AWTK-MVVM開發的低代碼智能串口屏方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI運行時工程、修改應用界面以及開發MCU程序。

簡介

本篇文章將介紹如何使用AWStudio設計UI界面以及如何將設計好的UI界面上傳到串口屏HMI端上。在AWStudio上設計好界面后只需要打包資源文件,將資源文件拷貝到串口屏端(HMI端)對應位置即可,整個過程無需重新編譯HMI端代碼。

ca70d8c6-d118-11ee-9118-92fbcf53809c.png

圖1 AWTK-HMI工作原理

使用AWStudio設計UI界面

在原本的demo_home2示例中,已經實現了“空調”與“咖啡機”的界面,這里就以實現“燈光”界面為例子來介紹如何使用AWStudio設計HMI端UI界面,在該界面將要實現顯示燈光亮度和設置燈光亮度兩個功能。

1. 導入AWTK-HMI官方示例

首先,從官方的Gitee下載awtk-hmi倉庫到本地目錄,并使用AWStudio導入awtk-hmi/hmi/demo_home2例程。

ca74d0ac-d118-11ee-9118-92fbcf53809c.png圖2在AWStudio中導入demo_home2示例2. 新增界面并設置點擊按鈕跳轉界面點擊AWStudio中的“新建窗體”按鈕,新建一個Window類型的窗體作為“燈光”功能的界面。然后選中“light_btn”控件,通過修改“v-on:click”屬性使用navigate窗口導航器便可以實現點擊該按鈕跳轉到新建好的界面,如下圖Args參數就是新建窗體的名稱。v-on:click=”{navigate, Args=light_win}”

ca78b9f6-d118-11ee-9118-92fbcf53809c.png

圖3使用窗口導航器實現界面跳轉3. 界面設計與布局界面布局可以使用AWStudio自行設計喜歡的界面,如下圖:

ca7c6eca-d118-11ee-9118-92fbcf53809c.png

圖4“燈光”界面整體布局

為界面內的控件添加綁定規則

接下來為界面中的部分控件添加上綁定規則,這里拿最簡單的設置變量與顯示變量作為例子演示。

1. 為顯示數據的控件添加綁定規則

在界面中有一個label控件用于顯示當前的燈光亮度,可以添加綁定規則獲取從MCU端發送過來的數據。綁定規則如下圖,此時若MCU端發送了“真實_亮度”數據到串口屏端時,該label控件會同步更新text屬性的值。v-data:text=”{真實_亮度+’%’}”ca80ea7c-d118-11ee-9118-92fbcf53809c.png圖5為顯示數據的控件添加綁定規則2.為設置數據的控件添加綁定規則除了獲取數據之外,還需要為設置數據的滑動條控件添加綁定規則。綁定的規則如下,此時拖拽滑動條控件時MCU端就會收到關于“設定_亮度”的數據。v-data:value=”{設定_亮度}”ca84cbd8-d118-11ee-9118-92fbcf53809c.png

圖6為設置數據的控件添加綁定規則

關于“真實_亮度”和“設定_亮度”兩個變量的處理邏輯是在MCU端里面實現的,串口屏端無需理會。更多的綁定規則用法可以參考awtk-hmi/docs目錄下的文檔介紹,也可以直接參考awtk-hmi/hmi目錄的demo。

3.初始化數據

完成控件的數據綁定后,可以通過修改資源文件來設置綁定數據的初始值,文件具體路徑:

design/default/data/default_model.json

ca88e830-d118-11ee-9118-92fbcf53809c.png圖7通過default_model.json設置數據初始值

將資源文件更新到串口屏端

假設您之前已經編譯好HMI端的運行時程序,并成功運行在板子上了?,F在通過AWStudio設計好界面后AWStudio設計好界面后,點擊“項目”--“打包”選項打包資源文件,此時會在項目目錄下的res文件夾內生成打包好的資源文件,接著替換板子上對應資源文件即可。

1. 嵌入式Linux

嵌入式Linux平臺的資源文件位于release/assets目錄中,直接將新的資源文件替換到此目錄,最后只需要將HMI端的運行時程序殺掉再重啟進程即可。

2.STM32

一般STM32平臺的串口屏端是使用加載外部資源方式,所以同樣只需更換外部存儲設備的assets目錄,替換文件之后需要重啟STM32設備。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • mcu
    mcu
    +關注

    關注

    146

    文章

    16064

    瀏覽量

    344174
  • 開源
    +關注

    關注

    3

    文章

    3004

    瀏覽量

    41750
  • 串口屏
    +關注

    關注

    8

    文章

    480

    瀏覽量

    36643
收藏 人收藏

    評論

    相關推薦

    串口

    串口
    默語聆聽
    發布于 :2024年01月11日 09:03:34

    如何對串口對應的UI組件進行控制

    怎樣去實現串口多頁面顯示?如何對串口對應的UI組件進行控制?
    發表于 01-27 07:05

    基于AWTK推出的ZMP110x串口屏應用方案

    串口屏廣泛應用于工業自動化、智能家電、醫療設備、共享設備等各個顯示領域。立功科技基于AWTK推出的ZMP110x串口屏應用方案,真正實現秒開
    發表于 07-25 17:16 ?1043次閱讀

    2小時可以在ZMP110x創新串口屏上做一個什么樣的UI?

    UI設計完成后,將整個UI項目拷貝到eclipse工程的”awtk_demo”文件夾中,并配置工程;編譯后生成的bin文件即為UI固件,更名為“a
    的頭像 發表于 11-23 14:41 ?1335次閱讀

    大彩串口屏醫用級首款圓形UI界面2.1寸串口屏新品正式發布!

    大彩串口屏醫用級首款圓形UI界面2.1寸串口屏新品正式發布!該產品是一款2.1寸分辨率為 480*480的醫用級工業組態串口屏。擁有2.1寸
    的頭像 發表于 09-01 14:25 ?1557次閱讀
    大彩<b class='flag-5'>串口</b>屏醫用級首款圓形<b class='flag-5'>UI</b><b class='flag-5'>界面</b>2.1寸<b class='flag-5'>串口</b>屏新品正式發布!

    AWTK 開源智能串口方案

    AWTK開源智能串口方案發布,旨在解決傳統串口屏諸多痛點,為用戶提供更開放、更易用、更強大的
    的頭像 發表于 12-02 08:24 ?491次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>開源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b>屏<b class='flag-5'>方案</b>

    ?【AWTK開源智能串口方案方案介紹和工作原理

    串口方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI運行時工程、修改應用界面以及開發MCU程序。AWTK開源
    的頭像 發表于 12-21 08:24 ?434次閱讀
    ?【<b class='flag-5'>AWTK</b><b class='flag-5'>開源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b>屏<b class='flag-5'>方案</b>】<b class='flag-5'>方案</b>介紹和工作原理

    AWTK 串口屏開發(3) - 告警信息

    告警信息是一個常用的功能。在AWTK開源串口屏中,內置告警信息模型,只需設計用戶界面即可實現告警信息的顯示和管理。1.功能告警信息是一個常用的功能,MCU在設備異常時,會發送告警信息到
    的頭像 發表于 12-23 08:24 ?199次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b>屏開發(3) - 告警信息

    AWTK 串口屏開發(4) - 數據采集

    數據采用是一個常用的功能。在AWTK開源串口屏中,內置數據采樣模型,只需設計用戶界面即可實現采樣數據的顯示和管理。1.功能數據采集是一個常用的功能,MCU定時采集數據(如環保設備定時采
    的頭像 發表于 12-30 08:24 ?177次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b>屏開發(4) - 數據采集

    AWTK 串口屏開發(5) - MCU端 SDK 用法

    AWTK開源智能串口屏,不但開放了串口屏端全部源碼,還提供了MCU端SDK,大大加快MCU軟件的開發。本介紹一下MCU端SDK在不同平臺上的
    的頭像 發表于 01-06 08:24 ?179次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b>屏開發(5) - MCU端 SDK 用法

    AWTK 開源串口屏開發(6) - 定時器的用法

    定時器是個常用的功能,AWTK串口屏提供了豐富的定時器函數,用于定時器的啟動、停止、暫停、恢復、修改和重置等功能,本文以計時器的例子來介紹定時器的基本用法。定時器也是一個常用的功能,在AWTK
    的頭像 發表于 01-13 08:24 ?189次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>開源</b><b class='flag-5'>串口</b>屏開發(6) - 定時器的用法

    AWTK開源智能串口方案】HMI端程序移植編譯及運行

    本篇文章介紹一下AWTK開源智能串口方案串口屏端(即HMI端)的編譯運行步驟,并介紹如何將H
    的頭像 發表于 01-18 08:24 ?332次閱讀
    【<b class='flag-5'>AWTK</b><b class='flag-5'>開源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b>屏<b class='flag-5'>方案</b>】HMI端程序移植編譯及運行

    AWTK開源智能串口方案】MCU SDK使用與編譯運行

    的低代碼智能串口方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI運行時工程、修改應用界面以及開發MCU程序。MCU端簡介相對于HMI端(
    的頭像 發表于 02-19 12:11 ?436次閱讀
    【<b class='flag-5'>AWTK</b><b class='flag-5'>開源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b>屏<b class='flag-5'>方案</b>】MCU SDK使用與編譯運行

    AWTK 開源串口屏開發(14) - 界面重用

    AWTK串口屏支持同一個界面綁定不同的數據,本文以家居控制為例,介紹一下界面重用的方法。在家居控制應用中,我們演示了空調和咖啡機界面?,F在我
    的頭像 發表于 03-23 08:23 ?129次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>開源</b><b class='flag-5'>串口</b>屏開發(14) - <b class='flag-5'>界面</b>重用

    AWTK 開源串口屏開發(16) - 提供 MODBUS 服務

    AWTK串口屏內置MODBUS從站模型,不用編寫一行代碼即可讓串口屏提供MODBUS服務,讓遠程設備通過MODBUS協議訪問串口屏上的數據。1.功能讓
    的頭像 發表于 04-13 08:24 ?114次閱讀
    <b class='flag-5'>AWTK</b> <b class='flag-5'>開源</b><b class='flag-5'>串口</b>屏開發(16) - 提供 MODBUS 服務
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>