本文導讀
ZMP110x創(chuàng)新串口屏應用開發(fā)如何脫離硬件,僅在PC上就完成全部的UI開發(fā)和通信調試工作?下面就跟隨小編步伐,一起玩轉虛擬串口屏開發(fā)模式吧。
普通串口屏需要拿到實物后,使用對應的上位機進行開發(fā)、燒錄,然后下載到串口屏中進行驗證;但既然都用串口屏了,電腦上也有串口,也有屏幕,為啥開發(fā)過程不在電腦上一步到位呢?下面一起看下ZMP110x創(chuàng)新串口屏應用開發(fā)如何以虛擬串口的方式在PC上完成全部的UI開發(fā)和通信調試工作。
AWTK 全稱 Toolkit AnyWhere,旨在為嵌入式系統(tǒng)、WEB、各種小程序、手機和 PC 打造的通用 GUI 引擎。基于“AnyWhere”這一特性,在AWTK Designer中拖拽生成的UI,本來就可以在“AnyWhere”中運行。
實現思路
基于這一思路,只需將PC端模擬運行的串口屏程序的“串口”補齊,使其具備收發(fā)串口數據的功能,就能僅在PC端完成ZMP110x串口屏的開發(fā)驗證!
虛擬串口
這一步有許多的現有方案,本文就不再贅述。
打開串口
使用AWTK集成的串口流擴展模塊tk_iostream_ serial_t中的tk_iostream_serial_create函數打開串口。
收發(fā)數據
串口屏中接收到數據會發(fā)送一個自定義的消息,調用串口指令解析函數,并把數據傳入函數中;為了兼容串口屏程序,PC端也采用了同樣的操作。
至于發(fā)送數據就更加簡單,增加與串口屏中同名的發(fā)送函數,在函數中調用串口輸出流,發(fā)送串口數據。
實際操作
如圖所示,經過優(yōu)化,客戶在實際使用時僅需拷貝兩個文件夾,修改兩個文件即可。
1.以新建的空白UI為例,將“pc_uart_debug”和“serial”兩個文件夾粘貼在UI工程路徑下的src文件夾:
?
圖1全部更改圖示
串口默認配置為baudrate=115200 bytesize=8 stopbits=1 flowcontrol=0 parity=0,如需修改,可在pc_uart_debug/ pc_uart_debug.h中修改:
#define PC_UART_BAUDRATE 115200 #define PC_UART_BYTESIZE 8 #define PC_UART_PARITY 1 #define PC_UART_STOPBITS 0 #define PC_UART_FLOWCONTROL 02.在“application.c”中添加串口初始化及解初始化函數:
/** * 當程序初始化完成時調用,全局只觸發(fā)一次。 */ static ret_t application_on_launch(void) { pc_uart_debug_init(); //PC端串口初始化 return RET_OK; } /** * 當程序退出時調用,全局只觸發(fā)一次。 */ static ret_t application_on_exit(void) { pc_uart_debug_deinit(); //PC端串口解初始化 return RET_OK; }3.用文本編輯器打開“SConscript”,由于實現枚舉串口的為C++程序,所以得在源文件中加入cpp文件:
import os import sys import platform env = DefaultEnvironment().Clone() BIN_DIR = os.environ['BIN_DIR'] LIB_DIR = os.environ['LIB_DIR']; sources = Glob('**/*.c') + Glob('*.c') + Glob('**/*.cpp') env.Program(os.path.join(BIN_DIR, 'demo'), sources, LIBS = env['LIBS'])
修改完畢,在AWTK Designer中打開此工程,編譯后點擊模擬運行,在彈出的UI窗口中會出現選擇串口的白色小框;此時電腦上已有兩個互相連接的虛擬串口COM5和COM6,點擊OPEN按鈕,令UI程序使用COM5,在串口助手中使用COM6,即可完成接下來的開發(fā)/測試工作:
圖2運行效果
恢復到實體串口屏
在電腦端完成開發(fā)后,將此UI加入到串口屏eclipse工程中仍舊僅需屏蔽“tests”文件夾,即可正常編譯,編譯完成后就能將UI固件下載到實體串口屏中,完成整個流程:
圖3eclipse工程中編譯結果
效果展示
以串口屏的智能家居“hmi_demo”為例,加入上述文件后就能在PC端完成演示。
審核編輯:湯梓紅
-
嵌入式系統(tǒng)
+關注
關注
41文章
3624瀏覽量
129751 -
PC
+關注
關注
9文章
2102瀏覽量
154661 -
串口
+關注
關注
14文章
1557瀏覽量
77039 -
虛擬串口
+關注
關注
3文章
62瀏覽量
13941 -
串口屏
+關注
關注
8文章
546瀏覽量
37584
原文標題:【技術分享】玩轉ZMP110x創(chuàng)新串口屏的虛擬串口屏開發(fā)模式
文章出處:【微信號:立功科技,微信公眾號:立功科技】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論