uc/GUI在SylixOS下的应用

1 工作准备

1.1 环境准备

在使用之前,须安装有SylixOS的集成开发套件,由于系统上安装的防火墙软件或者杀毒软件,可能会影响到集成开发软件的使用,因此,在使用本套件前请关闭计算机上的windows 防火墙以及杀毒软件

因后续操作需要在模拟器上进行展示(本文档以mini2440模拟器进行模拟展示),所以在进行后续章节操作前,请完成 mini2440模拟器的配置并启动。

注意:本文档提供库只支持ARM体系结构,其他体系架构暂不支持

1.2 资源准备

请通过网上搜索或其他方式获取类GUI库。附件提供支持uc/GUI接口的类GUI库,如图 2-1所示libemwin工程。

图 2-1 工程资源文件

解压后将图 2-1中libemwin工程文件保存到相应路径(不包含中文路径)下,如E:\new_ide路径下,本文档以该路径作为工程存放路径。

2 实现步骤

2.1 导入base工程

双击打开RealEvo-IDE软件,选择菜单"File→Import",弹出界面如图 3-1所示。

图 3-1 导入base工程

点击"Next",弹出界面如图 3-2所示。

图 3-2 导入mini2440 base工程

点击"Finish",完成mini2440_base工程导入。

2.2 导入uc/GUI库

2.2.1 导入libemwin工程

参照mini2440_base工程的导入步骤,导入libemwin工程。

导入完成后,展开libemwin工程,查看工程资源管理器如图 3-3所示。

图 3-3 libemwin工程资源管理器

2.2.2 配置Libemwin工程

右击libemwin工程选中"Properties"选项,弹出界面如图 3-4所示。

图 3-4 工程依赖base工程设置

点击"Apply"后,需要继续配置设备,操作步骤如图 3-5所示。

图 3-5 设置设备IP

点击"OK",完成配置。

2.2.3 编译上传libemwin工程

选中"libemwin"工程,点击进行工程编译,如图 3-6所示。

图 3-6 工程编译

编译完成后,会生成相关库文件以及demo示例,资源管理器如图 3-7所示。

图 3-7 编译后工程资源管理器

上传工程到目标设备,操作步骤如图 3-8所示。

图 3-8 上传demo以及库

完成上传后,"/lib/"文件夹下会有uc/GUI支持库,以及"/apps/"文件夹下存在示例demo,如图 3-9所示。

图 3-9 uc/GUI 库和示例demo

2.3 运行示例uc/GUI工程

运行demo程序,操作步骤如图 3-10所示。

图 3-10 运行示例demo

执行demo示例后,会在模拟器上得到如图 3-11所示现象。

图 3-11 demo示例现象

3  新建uc/GUI APP工程

3.1 新建APP工程

新建uc/GUI APP工程,操作步骤如图 3-12所示。

图 3-12 新建APP工程

点击"Next"后,弹出界面如所示。

图 3-13 base工程选择

点击"Finish",新建APP工程完成。

3.2 配置APP工程

依赖base工程配置和设备IP配置,操作步骤请参照libemwin工程配置流程(参照2.2.2节)。

链接库设置,右击工程选择"properties"选项,操作步骤如图 3-14所示。

图 3-14 设置链接库

3.3 编辑APP工程

设置完成后,可以对APP工程编程。展开工程,对APP工程的"src"目录下文件代码编辑,工程框架如图 3-15所示。

图 3-15 APP工程框架

参考代码如图 3-16所示(代码为简单uc/GUI编程示例)。

图 3-16 示例代码

3.4 编译上传APP工程

代码编辑完成后,编译上传新建APP工程,参照libemwin工程的编译上传步骤(参照2.2.3节)。

3.5 运行APP工程

执行APP工程,参照3.2.4节。可以在模拟器得到如图 3-17所示结果。

图 3-17 运行结果

时间: 2025-01-15 11:59:03

uc/GUI在SylixOS下的应用的相关文章

STM32+uCOS-II+uc/GUI移植 (uC/GUI API函数学习一)

最近一段时间以来,想学习移植uCGUI.在网络上找了大量的移植资料和学习教程,加上自己的不断努力,成功的完成了移植.现将学习中遇到的问题和已经记录下来,方面自己的翻阅,也可以为初学者提供一条捷径. uC/GUI基本函数: 在LCD上显示文本 GUI_DispString("") 参数:你希望显示的文本 选定坐标 GUI_GotoXY(x,y) 例如:在(10,10)坐标点位置,显示Hello World!文本 GUI_GotoXY(10,10); GUI_DispString(&quo

SylixOS下移植C++工程

1.使用范围 本文档适用于在RealEvo-IDE开发环境下移植C++工程的用户,使用者应熟悉使用RealEvo-IDE开发环境,并具备C++语言编程的基础知识. 2. 准备工作 2.1 环境准备 在使用之前,须安装有翼辉信息开发的集成开发套件,由于系统上安装的防火墙软件或者杀毒软件可能会影响到集成开发软件的使用,因此,在使用本套件前请关闭计算机上的windows防火墙以及杀毒软件. 因后续操作需要在模拟器上进行展示,所以在进行后续章节操作前,请完成mini2440模拟器的配置并启动,具体配置步

SylixOS下IIS驱动编程

目录 1. IIS简介    1 2. 数字声音简介    1 2.1    采样频率    1 2.2    量化位数    1 2.3    声道数    1 3. WAV音频文件格式简介    2 3.1    文件格式    2 3.2    原始声音数据的组织方式    2 4. Mini2440声卡的连接方式    3 4.1    相关连线说明    3 5. SylixOS下的OSS音频驱动接口    3 6. 播放声音流程    4 7. 录音流程    5 IIS简介 IIS

SylixOS下基于NUC970的NAND驱动

开发环境 开发环境 宿主机: Windows7 64bits 系统 开发板: 安米MDK972 软件环境: RealEvo-IDE3.0 NAND Flash: S34ML02G100TF100 S34ML02G100TF100芯片参数 Density:2 Gbit Input / Output Bus Width: 8-bits Page Size:2112 (2048 + 64) bytes; 64 bytes is spare area Block Size: 64 Pages;128k

sylixos下DBUS替换方案

1.1 SylixOS下替换原理 上一篇博客中介绍了DBUS通信原理以及常用函数接口,本文档介绍SylixOS下DBUS功能替换方案. SylixOS有多种进程间通信方法,可以实现类DBUS的进程间通信功能.根据DBUS通信原理,SylixOS下可设计替换方案如图 11所示. 替换方案需先创建一个后台进程,负责接收进程发送的消息,根据消息类型进行处理.若接收的消息是信号类型,则依次转发至其他进程,若消息类型是函数调用类型,则转发至目标进程,等待函数调用的返回值.替换方案中进程间通信通过UDP通信

SylixOS下移植glib时clock_gettime函数分析

1. 问题分析 移植glib中间件时,运行测试用例出现异常错误,定位问题为g_clock_gettime函数获取的时间和系统API获取的时间不一致导致. glib中间件中g_get_monotonic_time函数原型如程序清单 1.1所示. 程序清单1.1  g_clock_gettime函数原型 gint64  g_get_monotonic_time (void) {   struct timespec ts;   gint result;   result = clock_gettime

SylixOS下基于Zynq-7000加载FPGA程序

1.概述 本文主要介绍SylixOS下基于Zynq-7000平台加载FPGA程序的方法,该方法使用的是Zynq-7000的devcfg功能模块(Device Configuration Interface),该模块支持系统启动后进行FPGA程序的在线加载. 2.使用方法介绍 2.1 工程所在目录devcfg驱动模块及应用程序位于本地git仓库中,暂不提供源码,如有需要可自行移植. 2.2 使用方法 2.2.1 部署驱动模块及应用程序将驱动模块和应用程序工程分别导入IDE的workspace中并进

移植Eigen库到SylixOS下及使用方法

1. 开发环境 宿主机:Windows 7 集成开发环境:Real-Evo IDE 3.5.3 虚拟机:Ubuntu 目标机:x86 2. Eigen简介 Eigen是一个提供了线性代数.矩阵.向量操作等运算的C++库,其中包含了很多算法.Eigen的License是MPL2,支持多平台. Eigen使用提供源码的方式给用户使用,在使用时只需要包含Eigen的头文件即可进行使用.之所以采用这种方式,是因为Eigen采用模板方式实现,由于模板函数不支持分离编译,所以只能提供源码而不是动态库的方式供

SylixOS下获取随机数方法

1. 概述 随机数是专门的随机试验的结果,数学上产生的随机数被称为"伪随机数",真正的随机数是由物理方法产生的.随机数的产生是由算术规则产生,由于随机数种子的不同,最终生成的随机数也不相同.如果随机数种子相同,则生成的随机数也是相同的,因此要产生随机数,随机数种子必须是随机的. 在编程过程中,有的时候需要通过代码生成随机数,SylixOS提供了生成随机数的函数以及随机数设备. 2. 函数介绍 SylixOS提供获取随机数种子函数srand,以及rand函数产生随机数. srand函数用