• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 設計應用 > 如何將AWTK應用部署到嵌入式開發環境中

    如何將AWTK應用部署到嵌入式開發環境中

    作者: 時間:2020-03-26 來源:電子產品世界 收藏
    編者按:AWTK是ZLG開發的可在各類操作系統運行的通用 GUI 引擎,自發布以來受到越來越多開發者和用戶的青睞。AWTK適用于嵌入式領域,本文將簡述如何將AWTK應用部署到嵌入式開發環境中。

    已經在多個嵌入式平臺做好了移植,并提供了相應的模板工程,如:嵌入式Linux、AWorksOS、RT1052裸系統以及STM32裸系統等。應用程序在Windows調試好之后,部署到這些嵌入式開發環境非常方便,只需要簡單的幾個步驟就可以了,具體的內容請看下文。

    本文引用地址:http://www.czjhyjcfj.com/article/202003/411371.htm

    下面我們就以HelloDesigner-Demo為例,說明如何將應用部署到嵌入式開發環境中。

    把應用部署到嵌入式Linux

    下面以周立功Linux開發套件M6708-T(Cortex-A9)為載體,如何將應用部署到嵌入式Linux中,操作步驟如下:

    (1)安裝交叉編譯器(Ubuntu16 x64)

    在M6708-T開發套件光盤資料中,找到 arm-poky-linux-gnueabi編譯器的安裝腳本并執行,默認安裝在類似如下的目錄:

    /opt/poky/1.7/sysroots/x86_64-pokysdk-linux/usr/bin/arm-poky-linux-gnueabi

    (2)下載整合包

    在AWTK官網下載整合發布包,將整合包其解壓到Linux系統目錄中(如:/home/user):

    (3)修改編譯工具鏈

    修改awtk-linux-fb/awtk_config.py文件:

    ■   設置TOOLS_PREFIX為arm-poky-linux-gnueabi編譯器的路徑,如下圖所示:

    image.png

    ■   如果CPU支持硬浮點,則開啟“-mfloat-abi=hard ”,如下圖所示:

    image.png

    (4)編譯應用程序

    將 HelloDesigner-Demo 復制到 user_apps 目錄下。執行下面的命令,目標文件將輸出到 awtk-linux-fb/build/bin:

    cd  /home/user/awtk-linux-fb

    scons  APP=../user_apps/HelloDesigner-Demo

    (5)打包應用程序

    編譯完成后,還需要把應用程序和資源文件打包在一起,才能下載到板子上運行,執行下面的命令,生成壓縮包release.tar.gz:

    cd  /home/user/awtk-linux-fb

    ./release.sh  ../user_apps/HelloDesigner-Demo/res

    (6)運行應用程序

    把 release.tar.gz 上傳到開發板并解壓,然后通過ssh或串口調助手讓板子運行:

    ./release/bin/demo

    把應用部署到AWorksOS

    下面以RT1052平臺為例,介紹如何將自己的應用移植到 AWorksOS 平臺上。從 官網下載最新的 RT1052 光盤資料,里面包含自帶移植好的 AWTK Eclipse 工程和 AWTK Keil 工程。只需屏蔽工程中自帶的示例代碼文件(通常名字是xxx_demo),然后往工程中添加用戶自己的應用代碼就可以了。

    使用Eclipse構建應用

    找到AWorksOS SDK開發包下的aw_m1052_disk-2.0.0目錄,然后按下面步驟操作:

    (1)打開m1052_awtk工程

    (2)屏蔽demos示例

    屏蔽m1052_awtk工程自帶demos應用示例,可按下圖所示操作:

    image.png

    (3)把應用加入工程

    將HelloDesigner-Demo復制到:

    aw_m1052_disk-2.0.0-testexamplesapplicationapp_awtk_demosrcuser_apps目錄下,再刷新工程,顯示如下圖所示。然后就可以編譯和調試工程了。

    image.png

    使用Keil構建應用

    找到aw_easyarmrt1052_disk-2.0.1目錄(AWorksOS SDK中),然后按下面步驟操作:

    (1)打開easy_arm_rt1052.uvprojx工程

    (2)屏蔽awtk-demo示例

    在easy_arm_rt1052工程中,默認提供了一個awtk-demo示例。如果需要將自己的應用添加到該工程,先屏蔽awtk-demo文件夾,可按下圖所示操作:

    image.png

    (3)把應用加入工程

    將HelloDesigner-Demo中的源代碼(通常在src目錄下),添加到這個Keil工程中,可按下圖所示操作。然后就可以編譯和調試工程了。

    image.png

    把應用部署到其他平臺

    ●   用于RT1052裸系統的awtk-easyarm-rt1052-raw工程

    ●   用于STM32裸系統的awtk-stm32f429igtx-raw工程

    以上這些工程都可以在AWTK的官網或者GitHub找到。如果想把自己的應用添加到這些Keil工程上編譯運行,方法都大同小異,即先屏蔽工程中自帶的示例代碼文件(通常名字是xxx_demo),然后往工程中添加用戶自己的應用代碼。

    RT1052裸系統Keil工程

    (1)獲取awtk-easyarm-rt1052-raw源碼

    git clone https://github.com/zlgopen/awtk-easyarm-rt1052-raw.git

    (2)打開awtk_gui_demo.uvprojx工程

    (3)屏蔽Chart-Demo示例

    在awtk_gui_demo工程中,默認提供了一個Chart-Demo示例。如果需要將自己的應用添加到該工程,先屏蔽Chart-Demo文件夾,可按下圖所示操作:

    image.png

    (4)把應用加入工程

    將HelloDesigner-Demo的源代碼(通常在src目錄下),添加到這個Keil工程中,可按下圖所示操作。然后就可以編譯和調試工程了。

    image.png

    STM32裸系統Keil工程

    下面以STM32F429為例,說明如何在工程中添加自己的應用,步驟如下:

    (1)獲取STM32f429igtx源碼

    git clone https://github.com/zlgopen/awtk-stm32f429igtx-raw.git

    (2)獲取AWTK源碼

    我們要把AWTK的源碼放到工程目錄中一起參與編譯,并要需確保AWTK SDK版本與應用的一致性。獲取AWTK源碼的方式有下面兩種:

    ■   方式一(推薦使用該方式):

    找到Designer的安裝目錄,將AWTKSDKawtk整個目錄復制到awtk-stm32f429igtx-raw目錄下。

    ■   方式二:

    按照下面命令從GitHub上下載最新的AWTK源碼。

    cd awtk-stm32f429igtx-raw

    git clone https://github.com/zlgopen/awtk.git

    (3)打開awtk.uvprojx工程

    (4)屏蔽AWTK-DEMO示例

    在awtk工程中,默認提供了一個AWTK-DEMO示例。如果需要將自己的應用添加到該工程,先屏蔽AWTK-DEMO文件夾,可按下圖所示操作:

    image.png

    (5)把應用加入工程

    將HelloDesigner-Demo的源代碼(通常在src目錄下),添加到這個Keil工程中,可按下圖所示操作。然后就可以編譯和調試工程了。

    image.png

    本文的詳細內容請看:《AWTK開發實踐》中的“第11章 把應用部署到嵌入式開發環境”。



    關鍵詞: ZLG AWTK

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 阳原县| 襄樊市| 娱乐| 康平县| 临猗县| 张家口市| 雷波县| 旺苍县| 开远市| 绥德县| 澳门| 阿勒泰市| 临桂县| 大英县| 保德县| 香格里拉县| 出国| 德清县| 南安市| 饶平县| 会昌县| 南宫市| 德庆县| 莫力| 精河县| 米泉市| 腾冲县| 江陵县| 东方市| 丘北县| 沂源县| 临沭县| 清水河县| 淮南市| 灵丘县| 呼玛县| 余庆县| 宣武区| 万荣县| 和林格尔县| 元阳县|