AWTK是基于C語言開發(fā)的跨平臺GUI框架。本系列文章介紹如何從0開始創(chuàng)建AWTK應(yīng)用程序,包括搭建開發(fā)調(diào)試環(huán)境、使用AWTK創(chuàng)建Hello工程并在模擬器上運行、將AWTK應(yīng)用程序移植到其它平臺。在AWStudio上編寫好AWTK應(yīng)用程序后,部署到RTOS平臺(如STM32)是很方便的,下面就以STM32F429型號為例子來介紹如何編譯AWTK應(yīng)用到RTOS平臺運行。
搭建RTOS平臺編譯環(huán)境
1. 下載Keil5與配置芯片包由于將AWTK應(yīng)用移植到STM32平臺需要用到Keil5,所以需要做一些準(zhǔn)備工作,包括下載Keil5以及對應(yīng)板子型號的芯片包。
2. 下載移植工程
在官方GitHub(github.com/zlgopen)上有實現(xiàn)STM32幾個型號的移植工程,其中包括STM32F429的工程(awtk-stm32f429igtx-raw)。接下來的移植工作需要在這些工程上操作,因此這里下載并解壓。其它型號如STM32F103、STM32F767的移植工程均可從官方GitHub下載。
圖1awtk-stm32f429igtx-raw移植工程目錄結(jié)構(gòu)這些工程已經(jīng)對接好了硬件設(shè)備,用戶只需要添加應(yīng)用到工程中編譯即可。
另外,還需要將AWTK SDK(上圖中awtk文件夾)復(fù)制到移植工程目錄下,最終移植工程目錄結(jié)構(gòu)如上圖所示:
編譯移植工程并下載到嵌入式設(shè)備
1. 編譯AWTK-DEMO
使用Keil打開awtk-stm32f429igtx-raw/USER/awtk.uvprojx文件即可打開移植工程,工程中默認(rèn)帶有一個AWTK-DEMO應(yīng)用,可以直接點擊Keil菜單欄的“Build”按鈕編譯工程。
2. 編譯自己的應(yīng)用
如果想在移植工程中編譯在PC上調(diào)試好的AWTK應(yīng)用,需要先屏蔽AWTK-DEMO:
- 在Keil的“Project”中右鍵awtk-demo文件夾 - “Options fro Group ‘AWTK-DEMO’”;
- 取消勾選“Include in Target Build”;
- 點擊“OK”保存。
圖2在Keil中屏蔽AWTK-DEMO接著再往移植工程中加入自己應(yīng)用的代碼文件,這里拿我們先前編寫的MyHelloWorld-Demo舉例:
點擊Keil菜單欄的“Manage Project Items”按鈕,彈出設(shè)置窗口;
- 在“Groups”點擊添加組按鈕,并輸入“MyHelloWorld-Demo”;
- 選中新建的組并點擊“Add Files”按鈕,在文件對話框中選擇并添加MyHelloWorld-Demo的代碼文件;
- 保存設(shè)置后再點擊Keil菜單欄的“Rebuild”按鈕重新編譯工程即可。
圖3在Keil中添加MyHelloWorld-Demo代碼文件
3. 下載應(yīng)用到嵌入式設(shè)備
編譯好移植工程后,使用仿真器(如:ST-Link)連接嵌入式板子和電腦,連接成功后在Keil上點擊菜單欄的“Download”按鈕即可將應(yīng)用下載到板子上。
圖4下載應(yīng)用到板子上其它型號的RTOS平臺移植方法也是大同小異,可以從官方的GitHub下載對應(yīng)的移植工程,先屏蔽工程中自帶的示例代碼文件(一般組名是AWTK-DEMO),然后往工程中添加用戶自己的應(yīng)用代碼及資源文件,最后編譯應(yīng)用并下載到設(shè)備即可。圖5實際板子運行效果
移植注意事項
在官方GitHub下載的移植工程默認(rèn)配置好了宏,如果想要自定義開關(guān)一些宏可以修改awtk_config.h文件里面的代碼,注意使用這個頭文件前提是需要在工程中定義HAS_AWTK_CONFIG宏。還有一些需要注意的事項如下:
若要加載PNG/JPG格式的圖片,StackSize不可小于32K,可以在platform.c中調(diào)整Heap大??;
在使用Keil編譯時,要在C/C++ -> Misc Controls 中加上 --gnu;
如果系統(tǒng)有 FPU,初始化時一定要開啟 FPU;
-
C語言
+關(guān)注
關(guān)注
180文章
7628瀏覽量
139754 -
RTOS
+關(guān)注
關(guān)注
24文章
837瀏覽量
120586 -
awtk
+關(guān)注
關(guān)注
0文章
49瀏覽量
332
發(fā)布評論請先 登錄
相關(guān)推薦
請問使用創(chuàng)建者IDE開始創(chuàng)建的最佳方式是什么?
AWTK的特點
安信Windows驅(qū)動開發(fā)教程:什么是通用 Windows 平臺 (UWP) 應(yīng)用程序?有什么功能?
基于AWTK開發(fā)應(yīng)用程序需要遵循的規(guī)范和方法
如何用AWTK和AWPLC快速開發(fā)嵌入式應(yīng)用程序
【從0開始創(chuàng)建AWTK應(yīng)用程序】開發(fā)及調(diào)試環(huán)境搭建

【從0開始創(chuàng)建AWTK應(yīng)用程序】創(chuàng)建應(yīng)用程序并在模擬器運行

【從0開始創(chuàng)建AWTK應(yīng)用程序】編譯應(yīng)用到嵌入式Linux平臺運行

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

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

AWTK-WEB 快速入門(1) - C 語言應(yīng)用程序

AWTK-WEB 快速入門(2) - JS 應(yīng)用程序

AWTK-WEB 快速入門(4) - JS Http 應(yīng)用程序

AWTK-WEB 快速入門(5) - C 語言 WebSocket 應(yīng)用程序

評論