0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

玩转ZMP110x创新串口屏的虚拟串口屏开发模式

立功科技 来源:立功科技 作者:求远电子 2023-02-02 14:18 次阅读

本文导读

ZMP110x创新串口屏应用开发如何脱离硬件,仅在PC上就完成全部的UI开发和通信调试工作?下面就跟随小编步伐,一起玩转虚拟串口屏开发模式吧。

普通串口屏需要拿到实物后,使用对应的上位机进行开发、烧录,然后下载到串口屏中进行验证;但既然都用串口屏了,电脑上也有串口,也有屏幕,为啥开发过程不在电脑上一步到位呢?下面一起看下ZMP110x创新串口屏应用开发如何以虚拟串口的方式在PC上完成全部的UI开发和通信调试工作。

AWTK 全称 Toolkit AnyWhere,旨在为嵌入式系统、WEB、各种小程序、手机和 PC 打造的通用 GUI 引擎。基于“AnyWhere”这一特性,在AWTK Designer中拖拽生成的UI,本来就可以在“AnyWhere”中运行。

实现思路

基于这一思路,只需将PC端模拟运行的串口屏程序的“串口”补齐,使其具备收发串口数据的功能,就能仅在PC端完成ZMP110x串口屏的开发验证!

虚拟串口

这一步有许多的现有方案,本文就不再赘述。

打开串口

使用AWTK集成的串口流扩展模块tk_iostream_ serial_t中的tk_iostream_serial_create函数打开串口。

收发数据

串口屏中接收到数据会发送一个自定义的消息,调用串口指令解析函数,并把数据传入函数中;为了兼容串口屏程序,PC端也采用了同样的操作。

至于发送数据就更加简单,增加与串口屏中同名的发送函数,在函数中调用串口输出流,发送串口数据。

实际操作

如图所示,经过优化,客户在实际使用时仅需拷贝两个文件夹,修改两个文件即可。

1.以新建的空白UI为例,将“pc_uart_debug”和“serial”两个文件夹粘贴在UI工程路径下的src文件夹:

37c81dd0-a2c1-11ed-bfe3-dac502259ad0.png  

图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  0
2.在“application.c”中添加串口初始化及解初始化函数:
/**
* 当程序初始化完成时调用,全局只触发一次。
*/
static ret_t application_on_launch(void) {
 pc_uart_debug_init();  //PC端串口初始化
 return RET_OK;
}


/**
* 当程序退出时调用,全局只触发一次。
*/
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,即可完成接下来的开发/测试工作:

37dfc624-a2c1-11ed-bfe3-dac502259ad0.png

图2运行效果

恢复到实体串口屏

在电脑端完成开发后,将此UI加入到串口屏eclipse工程中仍旧仅需屏蔽“tests”文件夹,即可正常编译,编译完成后就能将UI固件下载到实体串口屏中,完成整个流程:

37f2fb68-a2c1-11ed-bfe3-dac502259ad0.png

图3eclipse工程中编译结果

效果展示

以串口屏的智能家居“hmi_demo”为例,加入上述文件后就能在PC端完成演示。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式系统
    +关注

    关注

    40

    文章

    3430

    浏览量

    128219
  • PC
    PC
    +关注

    关注

    9

    文章

    1950

    浏览量

    152794
  • 串口
    +关注

    关注

    14

    文章

    1483

    浏览量

    74511
  • 虚拟串口
    +关注

    关注

    3

    文章

    56

    浏览量

    13737
  • 串口屏
    +关注

    关注

    8

    文章

    473

    浏览量

    36617

原文标题:【技术分享】玩转ZMP110x创新串口屏的虚拟串口屏开发模式

文章出处:【微信号:立功科技,微信公众号:立功科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ZDP1440串口屏应用开发如何使用虚拟串口调试

    ZDP1440串口屏应用开发如何使用虚拟串口调试呢?本文将详细方法分享给大家。
    的头像 发表于 01-25 11:32 713次阅读
    ZDP1440<b class='flag-5'>串口</b>屏应用<b class='flag-5'>开发</b>如何使用<b class='flag-5'>虚拟</b><b class='flag-5'>串口</b>调试

    实现了P2口驱动电平变化,为vgus串口输出控制奠定了基础#单片机 与串口

    串口串口
    蓝幽独梦
    发布于 :2022年09月08日 19:17:54

    #硬声创作季 电子产品创新设计:串口调试平台初次使用

    串口
    Mr_haohao
    发布于 :2022年10月25日 02:24:11

    #硬声创作季 电子产品创新设计:串口页面切换

    串口
    Mr_haohao
    发布于 :2022年10月25日 02:24:43

    #硬声创作季 电子产品创新设计:串口汉字字库生成

    串口
    Mr_haohao
    发布于 :2022年10月25日 02:25:15

    大彩串口新品:8寸商业级电阻式触摸串口发布!

    led串口
    广州大彩串口屏
    发布于 :2023年10月12日 14:45:49

    串口

    串口
    默语聆听
    发布于 :2024年01月11日 09:03:34

    VisualTFT 软件与“虚拟串口”联机通信

    1.1 概述在实际调试过程中,若我们手头上没有硬件或单片机程序显示总是出错,此时我们需单独测试或了解某个指令使用方法和显示效果,就可以将上位机VisualTFT 与“虚拟串口”联机起来,通过软件
    发表于 03-28 09:17

    串口开发包资料分享:串口开发纯干货分享(F系列串口开发包V1.5)

    串口开发包资料分享:串口开发纯干货分享(F系列串口
    发表于 04-16 15:08

    串口开发环境与虚拟串口屏绑定调试-V2.0

    串口开发环境与虚拟串口屏绑定调试,大家可以来学习下
    发表于 03-21 20:01 20次下载

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

    串口屏广泛应用于工业自动化、智能家电、医疗设备、共享设备等各个显示领域。立功科技基于AWTK推出的ZMP110x串口屏应用方案,真正实现秒开机,显示更炫酷,设计更灵活,快来了解吧。
    发表于 07-25 17:16 1037次阅读

    TCP服务器虚拟串口工具的MCGS开发调试教程

    虚拟串口的方式不同,虚拟从机的连接方式也就不同,利用虚拟串口的TCP服务器模式
    的头像 发表于 11-07 18:06 3237次阅读
    TCP服务器<b class='flag-5'>虚拟</b><b class='flag-5'>串口</b>工具的MCGS<b class='flag-5'>开发</b>调试教程

    2小时可以在ZMP110x创新串口屏上做一个什么样的UI?

    在UI设计完成后,将整个UI项目拷贝到eclipse工程的”awtk_demo”文件夹中,并配置工程;编译后生成的bin文件即为UI固件,更名为“awtk.bin”,并将其拷贝到SD卡或U盘;插入到串口屏主控板,并短接R与G,按下复位按键即可完成串口屏UI固件升级。
    的头像 发表于 11-23 14:41 1304次阅读

    虚拟串口及其在串口转以太网中的应用

    ​ 本文介绍虚拟串口的概念,以及如何在串口转以太网中利用该技术。 1.虚拟串口的概念 虚拟
    的头像 发表于 01-12 13:51 2424次阅读
    <b class='flag-5'>虚拟</b><b class='flag-5'>串口</b>及其在<b class='flag-5'>串口</b>转以太网中的应用

    智嵌物联ZQWL串口服务器虚拟串口使用演示

    智嵌物联ZQWL虚拟串口工作模式是将网口模拟成串口通信,相当于两端都是使用串口通信,所以在使用中,我们要使用网络
    的头像 发表于 02-23 08:38 1361次阅读
    智嵌物联ZQWL<b class='flag-5'>串口</b>服务器<b class='flag-5'>虚拟</b><b class='flag-5'>串口</b>使用演示