enWin使用部分中文字库
在小型嵌入式设备中有时需要简单的人机2交互界面,小型GUI有很多,比较常用的有STenWin,UCGUI,enwin,Embedded Wizard GUI。对与STenWin和enWin区别主要在STenWin在ST芯片上商用也完全是免费的。本blog介绍enWin使用部分中文字库。
开发环境:
window10操作系统;
KEIL MDK 5.23
FontCvtST.exe.
开发工具;
window10电脑;
STM32F767IGT6学习板;
J-linkV9烧录器
软件资料;
enWin V5.32
STM32Cube_FW_F7_V1.6.0
首先制作字库,使用的软件FontCvtST.exe.
打开软件后,新建Standard字库,Encoding选择16 Bit UNICODE,然后点ok。
然后就是字体设置,大家根据需求自行设置。
下面讲解字库添加,首先点击Edit->Disable all characters,这样我们把字库所有中文失能了,然后我们新建以供文档,里面内容就是你需要用到的中文字,比如我要使用:万连集团欢迎访问buy.42iot.com,文件如下:
特别注意的是保存是编码一定要修改问Unicode,否则程序不能使用。
txt文档制作ok后,我们导入FontCvtST.exe。点击Edit->Read pattern file选择我们的txt文件。可以看到软件中我们需要的字背景变白色,则说明导入字ok;
现在可以生成.c文件,我们点击File->Save As就可以得到我们需要的文件;
最后我们把.c添加到文件的工程去,在enWin初始化时一定要添加GUI_UC_SetEncodeUTF8();
GUI_Init(); //GUI初始化
WM_MULTIBUF_Enable(1);
GUI_Clear(); //清除显示屏
WM_SetCallback(WM_HBKWIN, &_cbBkWindow); //设置背景回调函数
GUI_CURSOR_Show(); //开启鼠标显示
GUI_UC_SetEncodeUTF8(); //使能EncodeUTF8
把字库定义到要使用的文件中;
extern GUI_CONST_STORAGE GUI_FONT GUI_FontFont_HZ16;
必然我要把TEXT设置中文,和enWin设置其他字体一样,但要在字体前加取值符;
TEXT_SetFont(hItem, &GUI_FontFont_HZ16);
到处我们完成了enWin使用部分字库的实验,但我们编译发现有错误,由于使用汉字,我们需要把使用汉子的.c文件编码改为UTF-8。我们可以打开.c另存为在相同路径覆盖掉之前.c就可以了,以后每次修改此.c都要修改编码方式,这应该是keil 5的bug吧。
我们重新编译就ok了,至此我们就完全完成了实验
最新文章
- CentOS7 Tomcat 环境部署
- spring使用Email邮件系统
- org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter与org.apache.struts.dispatcher.FilterDispatcher是什么区别?
- 遍历并remove HashMap中的元素时,遇到ConcurrentModificationException
- Yii框架-Smarty-整合
- 通过代码设置radiobutton不同方位图标的两种方法
- Mysql存储过程和函数
- NodeJS学习目录
- 高通HAL层之Sensor HAL
- 第七篇: 消息总线(Spring Cloud Bus)
- Doing Homework HDU - 1074
- Cents os 7下如何安装bzip2
- Py-lamda表达式学习【转载】
- MongoDB(课时13 where条件过滤)
- OpenCL + OpenCV 图像旋转
- C# 中奇妙的函数–8. String Remove() 和 Replace()
- Standard - 多线程基本概念面试题待整理
- supervise 用来监控服务,自动启动
- redis入门:介绍、特点、安装、各类型常用操作
- Thymeleaf框架
热门文章
- layui 动态添加 表格数据
- 简单后台登录逻辑实现Controller
- NOIP2017 D1T1 小凯的疑惑
- [REPRINT]Properties vs. Getters and Setters
- 进程队列补充、socket实现服务器并发、线程完结
- java面向对象复习之一
- 6392. 【NOIP2019模拟2019.10.26】僵尸
- Element ui 中的表格数据格式转换
- CF543B Destroying Roads 枚举 + 思维 + BFS
- Logstash介绍及Input插件介绍