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

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

3天内不再提示

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

合宙LuatOS 2022-01-11 18:03 次阅读

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

1

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


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

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

be3db286-7233-11ec-86cf-dac502259ad0.gif

前期主要准备工作


1. 硬件准备:

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

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

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

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

be68c23c-7233-11ec-86cf-dac502259ad0.png#金牛座开发板 >>bf18cee8-7233-11ec-86cf-dac502259ad0.png#字库芯片 >>

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

bf3bee14-7233-11ec-86cf-dac502259ad0.png

矢量字体Demo实操步骤


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

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

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

bf687fa6-7233-11ec-86cf-dac502259ad0.png

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)

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

    关注

    37

    文章

    6201

    浏览量

    121727
收藏 人收藏

    评论

    相关推荐

    九联科技推出“金牛座”智能穿戴鸿蒙模组UMA503-A5

    随着智能穿戴市场的蓬勃发展,对于无线通信模组的要求也日益严苛。为了迎合这一市场趋势,九联科技紧跟步伐,推出了一款象征着坚定、耐力和强大力量的“金牛座”智能穿戴鸿蒙模组——UMA503-A5
    的头像 发表于 03-18 09:33 239次阅读

    arcmap怎么导出矢量数据

    ArcMap 是一款功能强大的地理信息系统软件,可用于导出矢量数据。下面是一个详细的步骤指南,以帮助你了解如何使用 ArcMap 导出矢量数据。 第一步:打开 ArcMap 首先,打开 ArcMap
    的头像 发表于 02-25 15:13 474次阅读

    易华录获首届国新杯·ESG金牛奖新锐二十强

    11月24日,由中国 证券 报、中国国新控股有限责任公司、南通市人民政府联合主办的“新生态新价值新成长——2023金牛企业可持续发展论坛暨第一届国新杯·ESG金牛奖颁奖典礼”在江苏南通举行。现场重磅
    的头像 发表于 11-24 20:45 434次阅读
    易华录获首届国新杯·ESG<b class='flag-5'>金牛</b>奖新锐二十强

    安路科技荣获2023年度“金牛科创奖”

    11月23日,2023年度中国证券报第二十五届上市公司金牛奖名单重磅发布,安路科技(688107.SH)凭借优异的技术创新能力、稳健的业绩表现以及规范的公司治理斩获2023年度“金牛科创奖”。
    的头像 发表于 11-24 14:59 270次阅读

    LVGL案例分享--手把手教你移植到T113-i国产工业开发板

    市面上有许多嵌入式GUI库可供选择,包括开源GUI库和闭源GUI库,开源GUI库:LVGL,EmWin等;闭源GUI库:TouchGFX,柿饼GUI等。 本篇文章主要描述如何将LVGL8.1移植到创
    发表于 11-17 09:55

    SWM32SRET6——LVGL移植

    SWM32SRET6——LVGL移植
    的头像 发表于 10-26 17:33 724次阅读
    SWM32SRET6——<b class='flag-5'>LVGL</b>移植

    求助,关于MDK字体切换问题

    MDK5.23,将C/C++的字体由系统默认的Courier New切换为Consolas字体,想再切换回去的时候,发现Courier New字体选项居然不见了??思不得其解,这难
    发表于 10-25 07:10

    STM32GUI使用TouchGFX二进制字体(Binary Font)功能实现字体动态更新

    电子发烧友网站提供《STM32GUI使用TouchGFX二进制字体(Binary Font)功能实现字体动态更新.pdf》资料免费下载
    发表于 09-19 16:53 1次下载
    STM32GUI使用TouchGFX二进制<b class='flag-5'>字体</b>(Binary Font)<b class='flag-5'>功能</b>实现<b class='flag-5'>字体</b>动态更新

    LVGL 添加截图/截屏功能(lv_100ask_screenshot)

    本文内容选自问网,完整的演示视频观看: 前言 lv_100ask_screenshot 是一个基于 lvgl 的屏幕截图工具。 lv_100ask_screenshot 特性: 可以将LVGL
    发表于 09-01 10:56

    如何在MDK中部署LVGL

    LVGL的刚刚完成了对LVGL8的维护更新,发布了v8.3.5版。相对master分支上正在开发的LVGL9,该版本是一个吐血推荐的稳定版本。
    的头像 发表于 07-27 14:41 736次阅读
    如何在MDK中部署<b class='flag-5'>LVGL</b>

    在单片机上实现动态加载功能

    本项目是一个在单片机(如:STM32)上实现动态加载功能的函数库,与Windows中的dll,Linux中的so类似,可以将代码动态地从其他的存储介质,动态加载到RAM中。
    发表于 05-30 11:04 1176次阅读

    如何在imxrt1064的外部闪存中存储gui guider中使用的图像和字体

    我们在定制板上使用 imxrt1064,我们有一个外部闪存连接 flexspi1。 对于我们的项目,我们需要在外部闪存上存储 lvgl 图像和字体,因为片上闪存 (4MB) 的大小不够
    发表于 05-30 07:50

    最强最小GUI。把lvgl剪到700行内存1k

    *320的SPI屏双DMA 内存开销最多u16 DMA_buf[320] *2 作为一个现代GUI,支持背景图混色,支持半透明度,支持LVGL抗锯齿字体,和常规取模字体 支持文本动态移动,坐标超出
    发表于 05-20 21:23

    LVGL Simulation工程

    最近在玩一个开源项目,用到ESP32,玩着玩着感觉开源项目的UI太枯燥了,于是了解到了LVGL,网上很多关于ESP32跑LVGL的现有工程
    的头像 发表于 05-11 09:12 721次阅读
    <b class='flag-5'>LVGL</b> Simulation工程

    缺少VGlite字体渲染api文档,求分享

    , params) api用于注册字体,但是没有关于字体应该是什么格式的文档? param 参数是一个 vg_lite_font_params_t 类型,它有一个指向内存中字体的数据元素,但是要
    发表于 04-24 06:42