<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開源智能串口屏方案】HMI端程序移植編譯及運行

ZLG致遠電子 ? 2024-01-18 08:24 ? 次閱讀

本篇文章介紹一下AWTK開源智能串口屏方案的串口屏端(即HMI端)的編譯運行步驟,并介紹如何將HMI端移植到LinuxSTM32平臺或RTOS平臺,以及如何配置資源文件。

引言:AWTK-HMI是基于AWTK與AWTK-MVVM開發的低代碼智能串口屏方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI運行時工程、修改應用界面以及開發MCU程序。

上一篇文章《【AWTK開源智能串口屏方案】方案介紹和工作原理》介紹到HMI端工程(又稱為運行時)運行在串口屏硬件上,負責界面顯示和人機交互,用戶可替換里面的資源文件切換為不同的應用。它是支持跨平臺且不受硬件和系統限制的,本篇文章就來介紹一下如何將HMI端分別編譯到Windows、Linux平臺和STM32中。

ec639208-b597-11ee-aa22-92fbcf53809c.png

圖1 AWTK-HMI工作原理

在Windows上編譯HMI端程序

編譯串口屏程序很簡單,只需幾個步驟即可。首先確保電腦上安裝好了AWTK的開發環境,若沒有可以看往期文章教程《【從0開始創建AWTK應用程序】開發及調試環境搭建》。

從官方的Gitee(網址:gitee.com/zlgopen/awtk-hmi)下載awtk-hmi倉庫到本地目錄,并根據README.md文檔內的使用說明運行“prepare.bat”下載awtk與awtk-mvvm代碼文件。

ec67832c-b597-11ee-aa22-92fbcf53809c.png

圖2執行prepare.bat后的目錄結構

接著進入hmi/demo_home2目錄,輸入scons命令編譯HMI端的demo程序,并輸入下面的命令打包資源文件:

python ./scripts/update_res.py all

此時demo_hom2目錄下分別新增了bin和res兩個文件夾:bin目錄下是存放HMI端存放編譯后的可執行文件與動態庫;res則是存放運行時的資源文件,后期可以通過AWStudio設計新的界面替換res目錄的資源文件達到更新運行時UI界面的效果。

進入到bin目錄下運行demo.exe即可啟動編譯好的HMI端程序。

ec6b6c80-b597-11ee-aa22-92fbcf53809c.png

圖3 HMI端demo程序運行效果


移植HMI端程序到嵌入式Linux平臺

將Windows下載好的awtk-hmi目錄復制到Ubuntu交叉編譯環境中,并且在awtk-hmi目錄下載awtk-linux-fb移植層文件,最終awtk-hmi目錄結構如下圖:ec77a5d6-b597-11ee-aa22-92fbcf53809c.png

圖4 awtk-hmi交叉編譯目錄結構

首先進入到awtk-linux-fb配置好交叉編譯工具鏈路徑(具體配置教程可以看往期文章介紹《【從0開始創建AWTK應用程序】編譯應用到嵌入式Linux平臺運行》),配置好后輸入scons命令進行編譯。接著進入awtk-mvvm目錄,輸入下面的命令進行編譯。

scons LINUX_FB=true WITH_JERRYSCRIPT=false

回到awtk-linux-fb目錄并輸入下面第一條scons命令編譯HMI應用程序,編譯完成后接著輸入下面第二條命令發布應用。

scons APP=../demo_home2sh release.sh ../demo_home2/res demo

此時awtk-linux-fb目錄下會生成一個release文件夾,里面同樣包含了可執行文件目錄bin和資源文件目錄assets,后期可以通過AWStudio設計新的界面替換assets目錄文件達到更新運行時UI界面效果。最后,只需要將release文件夾拷貝到板子上并運行release/bin目錄下的demo程序即可。

移植HMI端程序到STM32平臺

這里以stm32h743開發為例子來介紹如何將HMI程序移植到STM32平臺,awtk-hmi自帶了一個stm32h743移植工程,所以整個移植流程比較方便。首先同樣需要將awtk、awtk-mvvm放到awtk-hmi目錄中,另外還需要運行下面兩條git命令下載awtk-fs-adapter和awtk-sqlite3。

ec7b938a-b597-11ee-aa22-92fbcf53809c.png

圖 5 AWTK-HMI移植STM32的目錄結構

接著使用keil打開hmi/awtk-stm32h743iitx-freertos/USER/awtk.uvprojx,點擊Build按鈕并等待編譯完成,可以看到以下信息。ec7fc7ac-b597-11ee-aa22-92fbcf53809c.png圖6 stm32h743移植工程在keil上編譯成功的信息

一般HMI端代碼和資源文件是分開的,因此還需要將資源文件目錄assets放到SD卡或U盤等形式,插入板子上使用文件系統來讀取。后期也能通過AWStudio設計新的界面替換該目錄達到更新運行時UI界面效果。
如果資源文件想要存放在SD卡中,需要讓 AWTK 支持 FATFS,并且通過awtk_config.h配置資源文件路徑,詳細操作可以閱讀下面目錄的移植文檔說明:

awtk-hmi/mcu/stm32/stm32h743-freertos/docs/stm32h743iitx_port.md

ec8388ec-b597-11ee-aa22-92fbcf53809c.png

圖7 awtk_config.h配置資源文件路徑

其它硬件平臺和RTOS移植方法也是大同小異的,可以從官方的Github下載對應的移植工程,參照stm32h743的移植工程在keil中添加所需的代碼文件(awtk、awtk-mvvm、hmi等)并配置awtk_config.h。

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

    關注

    3

    文章

    3026

    瀏覽量

    41776
  • 編譯
    +關注

    關注

    0

    文章

    624

    瀏覽量

    32459
  • 串口屏
    +關注

    關注

    8

    文章

    484

    瀏覽量

    36680
收藏 人收藏

    評論

    相關推薦

    淺析USART HMI智能串口

    概要:USART HMI智能串口,該顯示的介紹、GUI界面的設計、通訊方式和修改控件參數的相關指令等。一開始我們項目組在顯示上用的是12
    發表于 07-16 06:19

    AWTK的寓意

    一、介紹AWTK全稱Toolkit AnyWhere,是ZLG開發的開源GUI引擎,旨在為嵌入式系統、WEB、各種小程序、手機和PC打造的通用GUI引擎,為用戶提供一個功能強大、高效可靠、簡單易用
    發表于 08-20 08:12

    新手求助怎樣去使用HMI智能串口

    怎樣去使用HMI智能串口?有哪些步驟?
    發表于 08-31 06:07

    HMI智能串口與單片機串口通信實驗分享

    STM32f4日記4之HMI智能串口與單片機串口通信實驗(能通過按下串口
    發表于 11-25 06:21

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

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

    基于AWTK開發應用程序需要遵循的規范和方法

    AWTK 是 ZLG 開源的跨平臺 GUI 引擎,本文介紹一下基于 AWTK 開發應用程序需要遵循的規范和方法,以保證應用程序也能跨平臺
    的頭像 發表于 09-07 11:52 ?1175次閱讀

    【從0開始創建AWTK應用程序】創建應用程序并在模擬器運行

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何從0開始創建AWTK應用程序,包括搭建開發調試環境、使用AWTK創建Hello工程并在模擬器上
    的頭像 發表于 12-01 08:24 ?247次閱讀
    【從0開始創建<b class='flag-5'>AWTK</b>應用<b class='flag-5'>程序</b>】創建應用<b class='flag-5'>程序</b>并在模擬器<b class='flag-5'>運行</b>

    AWTK 開源智能串口方案

    AWTK開源智能串口方案發布,旨在解決傳統串口屏諸多痛點,為用戶提供更開放、更易用、更強大的
    的頭像 發表于 12-02 08:24 ?542次閱讀
    <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>

    【從0開始創建AWTK應用程序編譯應用到嵌入式Linux平臺運行

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何從0開始創建AWTK應用程序,包括搭建開發調試環境、使用AWTK創建Hello工程并在模擬器上
    的頭像 發表于 12-07 12:08 ?351次閱讀
    【從0開始創建<b class='flag-5'>AWTK</b>應用<b class='flag-5'>程序</b>】<b class='flag-5'>編譯</b>應用到嵌入式Linux平臺<b class='flag-5'>運行</b>

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

    串口方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI運行時工程、修改應
    的頭像 發表于 12-21 08:24 ?473次閱讀
    ?【<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 開源串口屏開發(6) - 定時器的用法

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

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

    的低代碼智能串口方案,本系列文章介紹如何從零開發HMI程序,包括搭建開發環境、創建HMI
    的頭像 發表于 02-19 12:11 ?536次閱讀
    【<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使用與<b class='flag-5'>編譯</b><b class='flag-5'>運行</b>

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

    本篇文章將介紹如何使用AWStudio設計串口屏端的UI界面和添加綁定規則,以及怎么將資源文件上傳到串口屏端。引言:AWTK-HMI是基于AWTK
    的頭像 發表于 02-22 08:24 ?264次閱讀
    【<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>】設計UI界面并上傳到<b class='flag-5'>串口</b>屏

    【從0開始創建AWTK應用程序編譯應用到RTOS平臺

    AWTK是基于C語言開發的跨平臺GUI框架。本系列文章介紹如何從0開始創建AWTK應用程序,包括搭建開發調試環境、使用AWTK創建Hello工程并在模擬器上
    的頭像 發表于 03-21 08:23 ?268次閱讀
    【從0開始創建<b class='flag-5'>AWTK</b>應用<b class='flag-5'>程序</b>】<b class='flag-5'>編譯</b>應用到RTOS平臺

    【插針機HMI開發】用AWTK開發人機界面

    AWTK介紹致遠電子的AWTK開源GUI引擎,提供了AWTK-C、AWTK-MVVM和AWTK-HMI
    的頭像 發表于 04-19 08:23 ?198次閱讀
    【插針機<b class='flag-5'>HMI</b>開發】用<b class='flag-5'>AWTK</b>開發人機界面
    亚洲欧美日韩精品久久_久久精品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>