- 博客(87)
- 资源 (1)
- 收藏
- 关注
原创 【嵌入式】关于push老仓库到新仓库的方法
公司项目经常会有需要从开源项目中镜像代码过来的活,所以常常会在自己的服务器上创建一个对应的仓库,然后使用命令将期push过去。为方便日后抄命令,这里记录一下使用的命令。
2024-11-18 12:03:21
311
原创 【嵌入式】关于xshell运行一些命令跳框阻止运行的问题
最近在ubuntu上调试音频功能,而使用的xshell工具老是跳一个框出来,不让我运行,很烦,特意查了一下原因。
2024-04-26 12:25:14
227
原创 【嵌入式】如何将多个图片转成一个GIF
此方法求图片大小是一致的,如果不是一样大的,会按第一张图片的大小生成最后的gif大小。-r 10 是设置输入图片的帧率,这样生成的也是按个帧率来生成的。-loop 0 表示无限循环。
2023-11-26 19:15:43
577
原创 【XSLVGL2.0】如何在其它线程内更新UI
项目常常会在其它线程更新UI的状态,但如果直接更新UI会导致UI数据异常从而使得UI挂死。这时只需要使用UI资源锁即可保证UI数据不会异常了。参考XSLVGL2.0 User Manual 页面管理器(v2.0)中和// 去操作UI。
2023-11-26 16:59:39
952
原创 【XSLVGL2.0】如何注册焦点对象及焦点保存
LVGL的焦点多数是需要自己手动注册的,它被注册在lv_group_t对象中。XSLVGL2.0的焦点逻辑是独立管理的,它与每一个页面绑定。所以当页面切换时,不会存在焦点混乱的问题。另外,LVGL一些对象会向默认焦点组自动注册,该功能可能导致焦点中多出一些莫名奇妙的焦点对象出来。// 显示时同步焦点// 隐藏时保存焦点// 向焦点组注册焦点对象// 在这里加焦点事件组件。
2023-11-25 19:39:04
702
原创 【XSLVGL2.0】如何实现一个顶层图层对话框
当项目中要求一个页面显示在最顶层,不能被其它页面遮挡时,可以使用此方法。XSLVGL2.0提供了一个消息图层来处理这一逻辑。只需要将新创建的对象以此为父对象创建即可。
2023-11-25 19:26:14
584
原创 【XSLVGL2.0】如何做全局键功能和键值映射
项目常见需要配置一个按键,并要求短按此按键回到首页, 长按此按键进行关机。XSLVGL2.0在输入设备对接接口中,有一个回调,在此回调中可以直接收到输入设备上报的所有按键事件。一般这个功能实现放在main.c中。-1 : 0;} else {// 跳转到首页} else {// 关机} else {return -1;-1 : 0;} else {// 跳转到首页if (timer!
2023-11-25 18:58:59
482
原创 【XSLVGL2.0】如何监听供电状态(包含电池电量等)
XSLVGL2.0对供电状态进行了功能封装,这样能减少客户做一系列判定逻辑的代码,只需要根据不同的事件,显示不同的状态即可。根据XSLVGL2.0 User Manual 系统管理器(v2.0)中相关APIs的描述,只需要注册接口即可监听这一功能(一注册此接口即会返回当前新的状态)。case XSLV_POWER_SUPPLY_MODE_BATTERY: // 电池供电case XSLV_POWER_SUPPLY_MODE_BATTERY_CHARGING: // 充电中。
2023-11-25 18:14:41
583
原创 XSLVGL2.0 User Manual 主题管理器(v2.0)
LVGL本身是有主题功能的,但它是针对全局的配置,放在XSLVGL上,作为各个部分是拆分成页面的形式并不是特别友好。更直接点说,就是面对复杂的多页面切换时,这种方式不够灵活。
2023-11-25 18:00:08
1012
原创 XSLVGL2.0 User Manual 页面管理器(v2.0)
页面管理器是参考以下的模式建立的一套独立页面的管理功能。此套逻辑,保证LVGL在渲染页面时,仅渲染当前需要展示的页面,而其它页面会被放至后台栈中不会被渲染,以期提升渲染速度。
2023-11-23 15:17:31
505
原创 XSLVGL2.0 User Manual 资源管理器(v2.0)
资源管理器是配合配置文件desc.json来实现的,而desc.json存在,使的多语言、字库的支持更加友好。简单点来说,用户通过资源ID(由’R.'开头的字符串)来查询,资源管理器会自动结合当时的环境给出正确的资源内容。"zh_CN": {"en_US": {"name":"English", "desc":"英语"},
2023-11-23 11:25:39
190
原创 XSLVGL2.0 User Manual 系统管理器(v2.0)
系统管理器主要负责两个功能:一是基础的系统配置,二是基础的系统功能porting管理。基础的系统配置提供包含首次开机默认音量、音量加减、屏幕亮度加减、亮/关屏、自动熄屏超时计算、自动待机超时计算、自动关机超时计算等接口。这些接口都是一般项目中最常用的接口。基础的系统功能porting管理是为了方向移植到不同的平台上,或者定制化一些系统接口功能。所有的porting接口由结构体进行管理,通过函数可以获取该结构指针位置。
2023-11-22 15:22:19
167
原创 XSLVGL2.0 User Manual 缩略图生成器(v2.0)
本文旨在说明缩略图生成器的实现方式及使用方法。缩略图生成器采成异步线程来解决生成时执行时间不可控的UI阻塞问题,同时送数据的队列采用的先进后出的方式,保证最近请求能在第一时间响应请求。送数据的队列由初始化时决定,当即时请求数量超出此队列长度时,先加入此队列的请求会被自动取消掉(使用此功能多为配合UI展示来做的,超出队列的请求视为已被隐藏的对象)。替换系统管理器中的............// 特殊处理return ret;
2023-11-22 13:15:54
171
原创 XSLVGL2.0 User Manual main函数详细说明(v2.0)
main函数内的逻辑都是流程式的内容, 依据函数的执行顺序,再结合一些注释就可以很好的理解这个流程了。大致的逻辑就是在main中执行接口初始化XSLVGL2.0的框架,通过回调InitLvgl管理框架的一些特性。int ret;// 参数解析器// 设置日志可通过syslog输出// 设置应用启动时动画(Linux上基本不用此功能,freertos上作为开机动画)// 初始化页面管理器return -1;// 等待页面管理器初始化完成// 保存LVGL刷帧的图片。
2023-11-18 18:27:18
134
原创 XSLVGL2.0 User Manual 日志邮件发送器(v2.0)
日志邮件功能是为了方便定位客户问题的方案。在使用此功能时,需要保证网络连接是正常的。内存使用日志功能使用的内存不超过 9K: 数据缓存(4096) + 消息缓存(512) + 静态变量(64) + 栈(4096)依赖命令rmtarmkdircd发邮件帐号发邮件帐号目前仅测试使用163的邮件发送正常,仅支持SMTP明文邮件;
2023-11-18 16:56:05
108
原创 XSLVGL2.0 Brief(v2.0)
XSLVGL是基于开源项目LVGL研发的嵌入式图形显示系统,也可以简单地理解为XSLVGL在完全兼容开源的LVGL开发方式基础上,增加了一些新的特性。XSLVGL分为Linux版本和FreeTROS两个版本。两个版本使用同一套开发接口,这大大增加了应用的可移植性。XSLVGL在针对特定平台的性能升上做了大量的优化,包含帧率送显、解码优化和LVGL源码优化等。基于这些优化,使得XSLVGL能达到60帧送显的能力。XSLVGL也提供了丰富的新特性接口,以期提升项目的开发速度。
2023-11-18 15:58:10
323
原创 【嵌入式】【GIT】如何迁移老的GIF到新的仓库时使用LFS功能并保持LOG不变
假设有仓库需要迁移到新的仓库如果正常时,无论新老仓库都会查到以下log,表示tags和分支都迁移成功了。
2023-10-31 19:00:24
436
原创 【案例讲解】LVGL关于旋转的配置
在实现项目中,因为横竖屏的关系,需要对其做90度的旋转。配置旋转时发现一些局部刷新控件,旋转后效果不对。异常图标正常图标。
2023-10-13 13:04:26
3010
原创 LVGL misc area 方块区域通用函数(lv_area.c)
该章节主要描述LVGL中lv_area.c和lv_area.h中定义的对方块区域使用时常用到的函数接口。这些函数的理解,直接影响对LVGL渲染的方案理解,所以这里列举说明一下。
2023-10-08 20:57:37
633
原创 【TrueType】Converting Outlines to the TrueType Format(将轮廓转换为TrueType格式)
本文档是个人翻译内容,仅供学习使用,翻译原文网址:如遇版权侵犯问题,请告知我,我将关闭此内容。更多内容参考。
2023-09-07 10:26:02
472
原创 【TrueType】TrueType Reference Manual(TrueType用户手册)
本文档是个人翻译内容,仅供学习使用,翻译原文网址:如遇版权侵犯问题,请告知我,我将关闭此内容。
2023-09-07 10:05:12
291
原创 【TrueType】Character Code/Glyph Mapping Requirements and Recommendations(字符代码/字形映射要求和建议)
本文档是个人翻译内容,仅供学习使用,翻译原文网址:如遇版权侵犯问题,请告知我,我将关闭此内容。
2023-09-07 10:04:23
99
原创 【TrueType】Font Tables(字库表格定义)
本章记录了组成TrueType字体文件表格定义,包括核心TrueType规范的AAT扩展名。OpenType特定表的文档不包括在内,即使是OS X和iOS上支持的表也是如此。有关这些表的更多信息,请参阅OpenType规范。表1介绍了所有平台上TrueType字体文件中使用的数据类型。除了字体目录必须首先出现在字体文件中之外,组成字体的表可以按任何顺序出现。为了方便访问本章中提供的信息,表格按字母顺序进行了描述。TrueType字体文件由一系列串联的表组成。表格是单词的序列。
2023-09-06 16:32:25
198
原创 【TrueType】Graphics State(图形状态)
图形状态变量建立了执行TrueType指令的上下文。本章按字母顺序列出了构成图形状态的变量,并简要描述了它们的目的和理解它们的作用所需的基本事实。特别是,它提供了有关每个变量的默认值、用于设置其值的指令以及受其设置影响的指令列表的信息。关于图形状态变量的作用的全面讨论可以在第2章“字体引擎”中找到大多数图形状态变量都有一个默认值,如下所示。该值在第一次访问特定字体时建立,并在开始解释任何字形时再次建立。可以使用说明更改图形状态变量的默认值。如果在控制值程序中更改了该值,则该值将成为新的默认值。
2023-09-01 18:57:18
174
原创 【TrueType】Font Engine(字库引擎)
本章节详细描述了基于TrueType格式字库的引擎工作方式, 该软件可将TrueType字体中的信息转换为适合在屏幕或打印机上显示的光栅图像。
2023-09-01 18:24:57
434
原创 【TrueType】Digitizing Letterform Designs(数字化字体设计思想)
本章概述了数字化字体的主要内容有:数字化字体设计中的TrueType格式。完整的规范可参考。
2023-08-31 11:02:48
818
原创 【LUBAN】【功能验证】至简投屏功能之Android有线连接方式测试
至简投屏功能之Android有线连接方式支持至简自带应用至加的投屏功能和谷歌官方的功能。注: 该场景下不支持MIC投屏功能。
2023-08-21 18:44:50
1779
原创 【LUBAN】【功能验证】如何测试MIC/SPK(录音和播放)功能
在测试中,一般会把MIC和SPK一起来测试,因为一个录制音频,一个可以播放音频。通常,我们会使用aplay和arecord两个命令来测试。
2023-08-21 17:23:42
870
原创 【LUBAN】烧录经常失败怎么办?
在一些PC上烧录时,经常出现烧录失败的问题(如下图所示),这是因为烧录时会重启USB口,而PC一些其它的程序占用了此USB口,导致数据传输失败。多试几次也是能成功的,但不太友好(目前工具开发工程师正在积极解决此问题)。断开前一次烧录流程,然后执行。当出现此问题时,在串口上按。指令即可立即进入烧录。
2023-08-04 17:02:46
972
TTF字体裁减工具。它在开源的sfnttool上修改而来,增加了以文件的方式来配置需要提取出来的字体内容。
2022-10-08
VIM配置文件,用于自动化配置VIM的。
2022-08-15
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人