news 2026/10/3 9:11:20

使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第四十讲)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
使用ZYNQ芯片和LVGL框架实现用户高刷新UI设计系列教程(第四十讲)

这一期讲解的控件是二维码,二维码是一种基于矩阵排列的二维条码技术,它以矩阵的形式存储数据,与传统的条形码相比,二维码可以存储更多的信息,并且能够处理数字、字母和汉字等多种数据类型。二维码由寻像图形、定界符、数据区和校验码等部分组成。其中,寻像图形用于帮助扫描设备定位二维码的边缘,定界符明确二维码的大小和编码区域,数据区则包含了实际的编码信息,校验码则用于错误检测和纠正。
在lvgl中生成二维码需要使用 nayuki 的 QR-Code-generator 码生成器。
以下是在guider的平台使用:

1.lvgl中的二维码使用流程

(1)在 lv_conf.h 中启用 LV_USE_QRCODE 。
(2)函数 lv_qrcode_create() 创建二维码对象,函数 lv_qrcode_update() 以生成二维码。
(3)使用 lv_qrcode_set_size() 和 lv_qrcode_set_dark_color() 或 lv_qrcode_set_light_color()函数修改尺寸和颜色,最后使用 lv_qrcode_update() 以重新生成(刷新)新的二维码。

2.代码
//Write style for screen_1, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
//设置screen1背景样式 完全不透明 白色背景 无渐变效果
lv_obj_set_style_bg_opa(ui->screen_1, 255, LV_PART_MAIN|LV_STATE_DEFAULT);
lv_obj_set_style_bg_color(ui->screen_1, lv_color_hex(0xffffff), LV_PART_MAIN|LV_STATE_DEFAULT);
lv_obj_set_style_bg_grad_dir(ui->screen_1, LV_GRAD_DIR_NONE, LV_PART_MAIN|LV_STATE_DEFAULT);

//Write codes screen_1_lottie_1

ui->screen_1_lottie_1 = lv_rlottie_create_from_raw(ui->screen_1, 338, 282, “”);
//设置位置以及大小
lv_obj_set_pos(ui->screen_1_lottie_1, 74, 78);
lv_obj_set_size(ui->screen_1_lottie_1, 338, 282);

//Write style for screen_1_lottie_1, Part: LV_PART_MAIN, State: LV_STATE_DEFAULT.
//设置背景透明度
lv_obj_set_style_bg_opa(ui->screen_1_lottie_1, 0, LV_PART_MAIN|LV_STATE_DEFAULT);

//Write codes screen_1_qrcode_1
//创建二维码组件
ui->screen_1_qrcode_1 = lv_qrcode_create(ui->screen_1, 300, lv_color_hex(0x2C3224), lv_color_hex(0xffffff));
//设置二维码内容
const char * screen_1_qrcode_1_data = “https://www.baidu.com/”;
lv_qrcode_update(ui->screen_1_qrcode_1, screen_1_qrcode_1_data, strlen(screen_1_qrcode_1_data));
//设置位置以及大小
lv_obj_set_pos(ui->screen_1_qrcode_1, 87, 92);
lv_obj_set_size(ui->screen_1_qrcode_1, 300, 300);
本文章由威三学社出品
对课程感兴趣可以私信联系

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 9:32:29

计算机网络(三):从 HTTP 1.0 到 3.0,“数据快递员”的4代升级路

上一篇咱们搞懂了 HTTPS 证书体系怎么给公钥验明身份,这篇咱们聚焦网络世界的“基础交通规则”——HTTP。从1996年的初代版本到2022年的3.0,它就像数据快递员的工作手册,每一次升级都在解决“送得慢、送不稳”的痛点。—— 全程不堆术语&…

作者头像 李华
网站建设 2026/10/2 15:11:49

一文读懂!国家级专精特新“小巨人”与重点“小巨人”的区别

在我国专精特新企业培育体系里,国家级专精特新“小巨人”是中小企业高质量发展的标杆,而重点“小巨人”则是从这批标杆里挑出的“精锐部队”。二者虽同属政策重点扶持阵营,但在定位、资源、使命上差别显著。下面就用大白话讲清楚两者的区别&a…

作者头像 李华
网站建设 2026/10/3 6:00:09

基于SpringBoot的旅游线路规划管理系统毕业设计项目源码

题目简介 在文旅消费升级、游客对个性化旅游需求日益增长,而传统旅游线路存在规划固化、资源整合不足、行程管控低效、游客体验单一的行业背景下,基于 SpringBoot 的旅游线路规划管理系统的构建具有重要现实意义与产业价值:从游客层面来看&am…

作者头像 李华
网站建设 2026/10/2 2:07:50

Electrocraft ACE1203-110-1220 伺服电机

Electrocraft ACE1203-110-1220 是一款直流伺服电机,设计用于高精度运动控制应用。其特点包括高扭矩密度、低惯量和快速响应,适用于工业自动化、机器人、医疗设备等领域。技术参数型号:ACE1203-110-1220电机类型:无刷直流伺服电机…

作者头像 李华