百变金牛座,LVGL加载外部矢量字体功能来了!

描述

 

 

基于LuatOS操作系统高效开发,替代传统串口屏——合宙LuatOS-HMI金牛座开发板此前推出了配即显的可视化DTU方案、灵活多变的控制器示例,现已全新支持LVGL矢量字体功能。

 

 

 

1

 

如何用金牛座实现矢量字体功能

 


 

 

在实际开发应用中,LVGL字体的使用必不可少。但是LVGL字体无法设置字号,只能每种字号都做一个字体文件。如果界面中需要用到多个字号的文字,又不希望每个字号都加载一个字体文件,怎么办?

——可以通过外接矢量字库芯片来实现。矢量字体可以缩放后不损失清晰度,并且字库数据存储在外部字库芯片里,通过SPI与模组连接,不占用模组内部存储空间。

前期主要准备工作

 

 

 


1. 硬件准备:

金牛座开发板、字库芯片GT5SUCD2E-1A、USB线

金牛座开发板及字库芯片在合宙商城及合宙淘宝店均已上架,可通过以下链接按需购买:

合宙LuatOS直营店(一):
luat.taobao.com

合宙LuatOS直营店(二):
openluat.taobao.com

#金牛座开发板 >> #字库芯片 >> 

 

2. 软件准备:

Windows电脑搭建LuatOS开发环境,可参考下文:

https://doc.openluat.com/wiki/21?wiki_page_id=1923

可使用LuatIDE便捷开发,VSCode插件市场搜索“LuatIDE”或以下链接直达:

https://luatos.com/t/LuatIDE

 

 

3. API说明:
https://doc.openluat.com/wiki/21?wiki_page_id=2752

 

 

矢量字体Demo实操步骤

 

 

 


 

1. 将字库芯片焊接在模块SPI上

目前只支持字库芯片GT5SUCD2E-1A(灰度4支持48以下字号,灰度2支持98以下字号,灰度1支持192以下字号)。

金牛座开发板焊接字库芯片后,实物图如下所示:

 

2. 固件版本定制:

大于等于V3208的LuatOS-Air版本,需通过定制固件系统生成带VF功能的定制固件。

合宙固件定制系统 —— 针对客户不同功能使用场景,提供免费在线定制固件服务。满足客户功能定制化需求,同时也能最大化保留LuatOS运行和存储空间。

定制固件地址:
http://erp.openluat.com/firm_customized

3. 初始化SPI:


 

spi.setup(spi.SPI_1,1,1,8,50000000,1)

4. 设置字体:


 

font68=lvgl.font_load(spi.SPI_1,68,2,190)

5. 字体使用:

local xiaoguoLabel=lvgl.label_create(itemCont, nil)  
lvgl.obj_set_style_local_text_font(xiaoguoLabel, lvgl.LABEL_PART_MAIN, lvgl.STATE_DEFAULT, font68)
lvgl.label_set_text(xiaoguoLabel, "测试@TEST")lvgl.obj_align(xiaoguoLabel,modeLabelCont, lvgl.ALIGN_OUT_RIGHT_MID, 238, 0)

 

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分