当前位置: 首页 > news >正文

AIR101 LuatOS LVGL 显示多个标签例程

 屏幕资料

 

 AIR101与屏幕连接

PC端仿真环境合宙官方PC端版本环境搭建教程

 

 PC电脑仿真

-- sys库是标配
_G.sys = require("sys")
sys.taskInit(function()local cnt=0lvgl.init(480,320)--lvgl初始化local cont = lvgl.cont_create(nil, nil);-- lvgl.cont_set_fit(cont, lvgl.FIT_NONE )local label  = lvgl.label_create(cont, nil)--创建标签labellocal label1 = lvgl.label_create(cont, nil)--创建标签labelwhile 1 dolocal str=tostring(cnt)local dispStr ="Latitude11:"..string.format("%3.2f",cnt)local dispStr1="Longitude:" ..string.format("%3.2f",cnt)lvgl.obj_set_pos(label1, 0, 15);lvgl.label_set_text(label, dispStr)--设置标签内容lvgl.label_set_text(label1, dispStr1)--设置标签内容lvgl.scr_load(cont)--加载标签-- lvgl.scr_load(label)-- lvgl.scr_load(label1)sys.wait(100)cnt=cnt+0.01end
end)
sys.run()

 PC电脑仿真运行效果

AIR101移植源码

--- 模块功能:lvgldemo
-- @module lvgl
-- @author armxu
-- @release 2023.10.24-- LuaTools需要PROJECT和VERSION这两个信息
PROJECT = "lvgl_multi_Label_demo"
VERSION = "1.0.0"log.info("main", PROJECT, VERSION)-- sys库是标配
_G.sys = require("sys")--[[
SPI0
SPI0_SCK               (PB2)
SPI0_MISO              (PB3)
SPI0_MOSI              (PB5)
]]--添加硬狗防止程序卡死
wdt.init(15000)--初始化watchdog设置为15s
sys.timerLoopStart(wdt.feed, 10000)--10s喂一次狗log.info("hello luatos")spi_lcd = spi.deviceSetup(0,20,0,0,8,20*1000*1000,spi.MSB,1,1)
-- log.info("lcd.init",
-- lcd.init("st7735s",{port = "device",pin_dc = 17, pin_pwr = 7,pin_rst = 19,direction = 2,w = 160,h = 80,xoffset = 1,yoffset = 26},spi_lcd))log.info("lcd.init",
lcd.init("st7735",{port = "device",pin_dc = 17, pin_pwr = 7,pin_rst = 19,direction = 0,w = 128,h = 160,xoffset = 2,yoffset = 1},spi_lcd))--[[-- v0006及以后版本可用pin方式
spi_lcd = spi.deviceSetup(0,pin.PB04,0,0,8,20*1000*1000,spi.MSB,1,1)
log.info("lcd.init",
lcd.init("st7735s",{port = "device",pin_dc = pin.PB01, pin_pwr = pin.PB00,pin_rst = pin.PB03,direction = 2,w = 160,h = 80,xoffset = 1,yoffset = 26},spi_lcd))
]]
log.info("lvgl", lvgl.init())sys.taskInit(function()local cnt=0--创建容器local cont = lvgl.cont_create(nil, nil);--创建2个标签local label  = lvgl.label_create(cont, nil)local label1 = lvgl.label_create(cont, nil)while 1 dolocal dispStr ="Latitude:"..string.format("%3.2f",cnt)--浮点数转换成字符串local dispStr1="Longitude:" ..string.format("%3.2f",cnt)--浮点数转换成字符串lvgl.obj_set_pos(label1, 0, 15);lvgl.label_set_text(label, dispStr)  --设置标签内容lvgl.label_set_text(label1, dispStr1)--设置标签内容lvgl.scr_load(cont)--加载容器 显示标签sys.wait(200)cnt=cnt+0.01--浮点数累加end
end)-- 用户代码已结束---------------------------------------------
-- 结尾总是这一句
sys.run()
-- sys.run()之后后面不要加任何语句!!!!!

 下载程序

 实际运行效果

设置标签字体颜色

参考:

设置颜色

添加的语句:

lvgl.label_set_recolor(label, true)
local dispStr ="#FF0000 Latitude11:"..string.format("%3.2f",cnt).."#"
-- sys库是标配
_G.sys = require("sys")
sys.taskInit(function()local cnt=0lvgl.init(480,320)--lvgl初始化local cont = lvgl.cont_create(nil, nil);-- lvgl.cont_set_fit(cont, lvgl.FIT_NONE )local label  = lvgl.label_create(cont, nil)--创建标签labellocal label1 = lvgl.label_create(cont, nil)--创建标签labellvgl.label_set_recolor(label, true)while 1 dolocal str=tostring(cnt)local dispStr ="#FF0000 Latitude11:"..string.format("%3.2f",cnt).."#"local dispStr1="Longitude:" ..string.format("%3.2f",cnt)lvgl.obj_set_pos(label1, 0, 15);lvgl.label_set_text(label,  dispStr)--设置标签内容lvgl.label_set_text(label1, dispStr1)--设置标签内容lvgl.scr_load(cont)--加载标签-- lvgl.scr_load(label)-- lvgl.scr_load(label1)sys.wait(100)cnt=cnt+0.01end
end)
sys.run()

 运行效果

http://www.lryc.cn/news/208310.html

相关文章:

  • Istio实战(七)- Bookinfo 部署
  • 出差学小白知识No5:|Ubuntu上关联GitLab账号并下载项目(ssh key配置)
  • FL Studio21.2中文版多少钱?值得下载吗
  • 软考系统架构师知识点集锦三:软件架构设计
  • docker - window Docker Desktop升级
  • Element UI + Vue 新增和编辑共用表单校验无法清除问题(已解决)
  • FL Studio21最新中文汉化解锁版,2024怎么激活FL Studio
  • Mac怎么清理磁盘空间?释放Mac磁盘空间有效方法
  • 论文阅读(一)城市干道分段绿波协调控制模型研究
  • k8s 部署nginx前端
  • ClickHouse UDF 官方示例Example报错解决方案
  • eval()函数的用法,计算字符串中的值,模板字符串进行计算
  • leetcode第80题:删除有序数组中的重复项 II
  • 【Docker】Docker-Compose内置DNS负载均衡失效问题
  • [Python]Selenium-自动化测试
  • 高效管理文件夹名称:如何批量修改指定多样化的文件夹名称
  • c 读取音频协议WAV文件头(再生成wav文件)
  • Prompt设计与大语言模型微调
  • 修复VS2015没有代码提示的问题【已解决】
  • DeepSpeed: 大模型训练框架 | 京东云技术团队
  • 暄桐推荐|学书法的必读书目
  • 2023年赋能更多的人
  • 量子计算与量子密码(入门级)
  • 将安全作为首要目标 — Venus 的现状和前景展望
  • 『第七章』翩翩起舞的雨燕:顺序与并发执行
  • c语言进制的转换10进制转换16进制
  • js中的Formdata数据结构
  • Spring MVC 执行流程
  • JAVA毕业设计104—基于Java+Springboot+Vue的医院预约挂号小程序(源码+数据库)
  • 一文了解独立站黑科技:clock斗篷技术