前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【STM32F429】第18章 ThreadX GUIX汉字显示(小字库)

【STM32F429】第18章 ThreadX GUIX汉字显示(小字库)

作者头像
Simon223
发布2021-01-06 21:37:43
6550
发布2021-01-06 21:37:43
举报

第18章 ThreadX GUIX汉字显示(小字库)

本章节为大家讲解GUIX汉字显示的小字库方式。

18.1初学者重要提示

18.2 GUIX Studio设置汉字显示

18.3 GUIX汉字显示设置

18.4 实验例程设计框架

18.5实验例程

18.6 总结

18.1 初学者重要提示

  1. 务必看第11章学习GUIX Studio的使用方法和第12章学习GUIX Studio生成的代码移植到硬件平台的方法。
  2. GUIX Studio生成的汉字是采用的UTF-8编码。
  3. GUIX Studio V6.0.2设置字体语言后不能立即生效,关闭软件重新打开后解决http://www.armbbs.cn/forum.php?mod=viewthread&tid=99661

18.2 GUIX Studio设置汉字显示

GUIX Studio的设置方法与第11章一样,我们这里把控件的位置和大小做了调整,并为window窗口创建一个定时器。

新调整的界面效果如下:

18.2.1 添加中文

首先,我们要在Languages对话框添加中文语言。打开菜单Configure->Languages:

打开后的效果如下:

点击按钮Add Language:

添加后的效果如下:

这样就完成了在原来英文的基础上再添加一种语言。

18.2.2 删除英文

添加了新的语言后,删除GUIX Studio默认创建的英文,在Language Index里面选择1,然后点击Delecte Languagle:

删除后,Number of Languages语言数变成了1:

18.2.3 设置语言ID

Language ID这里,我们要选项使用Chinese[zh]

18.2.4 添加字库

在GUIX Studio的如下位置添加新的字库(推荐将此字库和GUIX Studio工程文件放到一起):

点击后,弹出的对话框如下:

  1. Browse按钮用于选择字库。
  2. 此处推荐选择Project Relative Path相当路径。
  3. 设置字体高度为32点阵。
  4. 此处的勾选比较重要,用户可以在GUIX Studio里面方便的添加各种基于此字体的汉字,都会为其生成相应的代码。
  5. 使用8倍抗锯齿。
  6. 生成完毕后,别忘了点击保存。

18.2.5 为Prompt控件设置汉字

选中创建的Prompt文本控件,设置Text内容:安富莱电子,设置Font采用我们前面创建的NewFont。

18.3 GUIX汉字显示设置

设置了显示汉字,函数gx_studio_display_configure的第3个参数要根据GUIX Studio的设置来选择。我们这里设置显示中文,在文件guiapp_resources.h里面会生成专门的宏:

#define LANGUAGE_CHINESE 0

#define DISPLAY_1_LANGUAGE_TABLE_SIZE 1

根据这个宏,修改MainTask.c文件里面函数gx_studio_display_configure的第3个参数:

gx_studio_display_configure(DISPLAY_1, stm32h7_graphics_driver_setup_565rgb,

LANGUAGE_CHINESE, DISPLAY_1_THEME_1, &root);

18.4 实验例程设计框架

本章例程的重点是GUIX的中文显示。

18.5 实验例程

(注,如果是电阻屏,需要做触摸校准,校准方法看本教程附件章节A)

配套例子:

本章节配套了如下两个例子供大家移植参考:

  • V6-2019_GUIX Chinese Font

GUIX Studio生成的代码在硬件平台实际运行的工程,含有GCC,IAR,MDK AC5和AC6四个版本工程。

  • V6-2020_GUIX Studio Chinese Font

GUIX Studio工程模板,设计界面后,生成的文件可直接添加到MDK,IAR和GCC软件平台使用。

实验目的:

  1. 本章主要学习GUIX的汉字显示(小字库方式)。

实验内容:

  1. 共创建了如下几个任务,通过按下按键K1可以通过串口打印任务堆栈使用情况

App Task Start任务 :启动任务,这里用作BSP驱动包处理。

App Task MspPro任务 :消息处理,这里用作LED闪烁。

App Task UserIF任务 :按键消息处理。

App Task GUI任务 :GUI应用任务。

App Task STAT任务 :统计任务。

App Task IDLE任务 :空闲任务。

GUIX System Thread :GUI系统任务。

System Timer Thread任务:系统定时器任务。

实验效果:

GUIX Studio的界面设计如下:

串口打印任务执行情况:

IAR,MDK AC5和AC6工程可以串口打印任务执行情况:按开发板的按键K1可以打印,波特率 115200,数据位 8,奇偶校验位无,停止位 1:

Embedded Studio(GCC)平台的串口打印是通过其调试组件SEGGER RTT做的串口打印,速度也非常快,打印效果如下:

展示里面有乱码是因为Embedded Studio不支持中文。

18.6 总结

本章节主要为大家讲解了GUIX汉字显示的小字库方式,推荐大家设置不同的参数看效果,熟练掌握这些函数的用法。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2021-01-05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第18章 ThreadX GUIX汉字显示(小字库)
    • 18.1 初学者重要提示
      • 18.2 GUIX Studio设置汉字显示
        • 18.2.1 添加中文
        • 18.2.2 删除英文
        • 18.2.3 设置语言ID
        • 18.2.4 添加字库
        • 18.2.5 为Prompt控件设置汉字
      • 18.3 GUIX汉字显示设置
        • 18.4 实验例程设计框架
          • 18.5 实验例程
            • 18.6 总结
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
            http://www.vxiaotou.com