全志-量产方法&问题
文章平均质量分 75
DOT小文哥
全志科技软件工程师。芯片原厂/嵌入式/Linux/垃圾佬。本博客所有内容都可以在注明作者和出处的情况下转载。
展开
-
全志R128基础组件开发——显示与屏幕驱动②
Gamma 电压是用来控制显示器的灰阶的,一般情况下分为G0~G14,不同的 Gamma 电压与 Vcom 电压之间的压差造成液晶旋转角度不同从而形成亮度的差异,Vcom 电压最好的状况是位于 G0 和 G14 的中间值,这样液晶屏的闪烁状况会最好。通俗的讲就是在液晶面板施加一定电压后,会聚集大量电荷,当电压消失的时候,这些聚集的电荷也要释放,但由于介电效应,这些聚集的电荷不会立刻释放消失,这些不会马上消失的惰性电荷造成了液晶的 DC 残留从而形成了极化现象。这个参数只有在 lcd_if=0 时才有效。原创 2024-01-31 14:25:07 · 1003 阅读 · 0 评论 -
全志R128基础组件开发——显示与屏幕驱动①
RTOS 提供了一套完整的屏幕驱动,支持 RGB, i8080, SPI, DBI 格式的屏幕。RGB接口在全志平台又称HV接口(Horizontal同步和Vertical同步)。有些LCD屏支持高级的功能比如 gamma,像素格式的设置等,但是 RGB 协议本身不支持图像数据之外的传输,所以无法通过 RGB 管脚进行对 LCD 屏进行配置,所以拿到一款 RGB 接口屏,要么不需要初始化命令,要么这个屏会提供额外的管脚给 SoC 来进行配置,比如 SPI 和 I2C 等。原创 2024-01-31 14:18:36 · 993 阅读 · 0 评论 -
详解OpenHarmony各部分文件在XR806上的编译顺序
我们要明白,在开始写代码之前,了解整个程序的编译路径是十分有必要的。时,HarmonyOS的编译脚本就会从device_path中获取编译工具和编译选项,然后从product_path下寻找BUILD.gn文件。这个过程就像是在准备一场演出,编译工具是音响设备,编译选项是音量调节器,而。它就像是一个交通警察,告诉编译器:“嘿,你得先编译这个,然后再编译那个。这些文件和文件夹都需要按照一定的顺序进行编译,才能确保整个程序的顺利运行。原创 2024-01-29 09:59:06 · 727 阅读 · 0 评论 -
【全志T113-i】OK113i-S开发板-适配10寸LCD显示
首先根据主板使用说明,LVDS接口信息,主板是LVDS双8信号,我这里只有LVDS接口的屏幕,其他工程剩余的,是LVDS单8信号,需要做一些修改。我这个转接板是两部分,左边的是触摸线,右边的是屏幕接线,触摸的调试见另一篇文章。Default 注释的是原来的内容,1024x600是我的屏幕分辨率,这里面有许多参数,具体的说明如下:我们这里只关心几个即可。这里看到有看到其他的不同屏幕的配置文件,根据我的屏幕类型lvds,uboot-board-lvds.conf;Lcd_if: HV模式,见lcd屏幕说明。原创 2023-12-18 17:06:39 · 1038 阅读 · 0 评论 -
全志R128使用RGB LCD移植方法教程
这里的示例以百问网的7寸(1024x600)、4寸方屏(480x480)、4寸圆屏RGB(480x480) LCD为例。原创 2023-12-18 17:02:29 · 537 阅读 · 0 评论 -
你相信光吗?开源一个能进行虚拟光渲交互的全志D1s智能家居中控
项目整体形态以适配86盒安装为基础,使用全志RISC-V核心的D1s芯片作为主控,选择更契合广大房奴的户型的4.3寸长方形屏幕,屏显拉满输出RGB888,搭载全志系的芯之联XR829作为WIFI/BLE模块,多种方式联动。在开发系统的选择上,作者基于全志最新公开的Melis 4.0实时操作系统进行本项目的开发,并针对Melis 4.0粗糙地适配了LVGL图形库,实现了在性能受限的嵌入式设备上的光照渲染核心技术,致敬homeassistant。原创 2023-12-14 15:24:05 · 941 阅读 · 1 评论 -
全志XR806开发板适配ST7789LCD屏幕测试
本次使用XR806实现ST7789的屏幕的驱动。本文使用的LCD屏幕的原理图如下,可以确定LCD屏幕的控制引脚接线。XR806与LCD屏幕的控制引脚分布如下实际的连接效果如图所示。ST7789的驱动使用中景园的LCD驱动库,驱动文件包括在XR806的示例程序中GPIO工程的基础上进行移植。在gpio示例文件夹中添加lcd的驱动代码。移植时要实现对LCD引脚的控制,在lcd_init.h中添加以下代码在lcd_init.c中添加引脚的初始化函数,并替换延时函数为OS_MSleep,相关的带啊吗如下在ma原创 2023-12-13 14:03:06 · 232 阅读 · 0 评论 -
全志R128内存泄露调试案例
硬件:R128软件:FreeRTOS + rtplayer_test(Cedarx)+ AudioSystem。原创 2023-12-11 10:56:40 · 77 阅读 · 0 评论 -
全志XR806蓝牙mesh互传功能测试
nRF52840接到JlinkRTT Viewer,XR806接到putty,可以看到XR806的Controller/host协议栈的版本信息,手机发布一条开关(由GernericOnOff元素统属)消息,泛洪给两台射频设备,可以在各自控制台看到都有收到set opcode网络消息。最新的蓝牙mesh1.1引入了定向转发路由功能,扩大射频覆盖范围,使信号一级级中继下去,手头有nRF52840开发板,不妨和全志XR806进行组网,测试兼容性和互操作性,也验证XR806 mesh协议栈的完成度。原创 2023-12-07 15:48:29 · 53 阅读 · 0 评论 -
全志R128点屏SPI LCD颜色相关问题
虽然占用的是3个字节,但是没有CPU是3字节对齐的,所以需要一次性输入4字节,然后 DBI 硬件模块,会自动舍弃1个字节,软件同意舍弃了最后一个字节。因为屏幕是大端,而芯片存储方式是小端,所以芯片的 DBI 模块,会自动把数据从新排列,也就是实际上 DBI 发送数据时,会先发送。,对于SPI接口,是按字节发送。首先,得先确定显示屏使用的是SPI接口,还是DBI接口,不同的接口,输入数据的解析方式是不一样的。对于 DBI 格式,不再是以字节的形式去解析,而是以字的方式去解析,为了统一,软件已经规定了,原创 2023-12-06 09:48:54 · 182 阅读 · 0 评论 -
全志T113平台Uboot、内核、文件系统快速启动配置
另外,在某些嵌入式系统和设备中,启动时间对于系统的稳定性和可靠性至关重要,因此尽可能缩短启动时间,以确保系统能够在最短的时间内启动至关重要。修改完成后,请参考我司的T113-i产品资料《Linux系统使用手册》文档,重新编译生成Linux系统镜像,同时参考《Linux系统启动卡制作及系统固化》文档,将Linux系统镜像文件固化至NAND FLASH或eMMC,再从NAND FLASH或eMMC上电启动即可。为了满足需求,对T113-i原生系统进行剪裁,得到一个可快速启动的程序镜像。启动时间可缩短约10秒。原创 2023-12-06 09:36:03 · 735 阅读 · 0 评论 -
Qt应用开发--国产工业开发板全志T113-i的部署教程
Qt在工业上的使用场景包括工业自动化、嵌入式系统、汽车行业、航空航天、医疗设备、制造业和物联网应用。Qt被用来开发工业设备的用户界面、控制系统、嵌入式应用和其他工业应用,因其跨平台性和丰富的功能而备受青睐。Qt能够为工业领域带来什么好处:- Qt提供了强大的图形引擎,使开发人员能够创建具有吸引力和高性能的用户界面- Qt允许开发人员根据具体需求定制用户界面和功能。这对于满足不同行业和项目的独特需求至关重要,使工业应用能够实现个性化的解决方案。原创 2023-11-30 14:25:07 · 894 阅读 · 1 评论 -
4.3秒!基于全志T113平台的快速启动方案分享
另外,在某些嵌入式系统和设备中,启动时间对于系统的稳定性和可靠性至关重要,因此尽可能缩短启动时间,以确保系统能够在最短的时间内启动至关重要。本节内容对T113-i(其他嵌入式平台亦可参考)Linux系统快速启动优化方法进行说明,主要通过对U-Boot、内核以及rcS启动脚本的修改,实现系统快速启动。由于random设备初始化太慢,应用程序调用random的函数时可能被阻塞,导致应用启动慢,因此可通过关闭crng_ready()功能从而缩短启动时间,关闭crng_ready()功能后启动时间可缩短2~3秒。原创 2023-11-27 09:54:43 · 440 阅读 · 0 评论 -
【分析笔记】全志 T507 PF4 引脚无法被正常设置为中断模式的问题分析
全志原厂提供的 SoCs pinctrl driver 中的 PG4 中断信息描述错误,导致覆盖了 PF4 的引脚编号,因此只要修正 PG4 的描述信息,即可解决问题。这个问题不仅仅会影响 PF4 无法使用,也会影响 PG4 引脚无法使用,从代码来看,想要设置为 PG4 为中断模式,实际修改的会 PA0(0)。转载 2023-11-24 10:55:21 · 51 阅读 · 0 评论 -
【随笔记】C++ condition_variable 陷阱
这种问题只有在系统时间发生变化的时候才会出现,例如搭配 NTP 更新功能,硬件还未同步时间时,一般在 1993 年,此时使用了 wait_for() 这类接口等待 10 秒,结果在 10 秒内被 ntp 同步更新了时间到 2023,那么时间生效的一瞬间,wait_for() 就会直接被唤醒,且返回的结果是超时唤醒。另外一种时间倒退的场景,则影响会更大,例如在 2023 年,时间调回了 2022 年,那么 wait_for() 将会等待一年多才会被超时唤醒,代码执行的现象就像是调用了 wait() 的效果。转载 2023-11-24 10:33:06 · 107 阅读 · 0 评论 -
使用VSCode调试全志R128的C906 RISC-V核心
连接上CKLink,在设备管理器新增的USB设备上->右键->更新驱动程序->浏览我的电脑以查找驱动程序->浏览对应的驱动然后包括子文件夹->然后下一步即可。确保R128正常运行,CKLink 正常连接,点击红色按钮启动调试。函数最后面加上下列代码,配置 GPIO MUX 为 JTAG。此时如果电脑本地上有编译环境,可以使用。点击 VSCode 调试按键,开始调试。进行调试,假设编译获得的文件路径为。原创 2023-11-20 17:24:16 · 923 阅读 · 0 评论 -
全志R128内存泄漏调试案例
硬件:R128软件:FreeRTOS + rtplayer_test(Cedarx)+ AudioSystem。原创 2023-11-20 16:53:28 · 105 阅读 · 0 评论 -
LVGL案例分享--手把手教你移植到T113-i国产工业开发板
lvgl在Linux上的移植是比较简单快捷的;只需要修改几个配置文件,即可在目标上运行,对我们部署UI非常方便。lvgl在T113-i上运行整体效果还可以,流畅度整体满意,适合做一些项目的落地。lvgl的是跨平台的,所以写一个应用可以多端部署,避免了重复开发的过程。原创 2023-11-17 09:53:22 · 813 阅读 · 0 评论 -
全志XR806基于http的无线ota功能实验
XR806不仅硬件功能多,XR806也提供了功能极其丰富的SDK,几天体验下来非常容易上手。常见的功能几乎都有相应的cmd或demo实现,HAL也做得非常全面,非常适合快速开发。这一点超级好评!本文章要实现的无线OTA也基于该SDK。原创 2023-11-17 09:45:30 · 447 阅读 · 0 评论 -
全志R128基础组件开发指南——图像采集
CSI (CMOS sensor interface)接口时序上可支持独立 SYNC 和嵌入 SYNC(CCIR656)。支持接收 YUV422 或 YUV420 数据。VSYNC 和HSYNC 的有效电平可以是正极性,也可以是负极性。在配置时,需要保证摄像头和 CSI 内部配置保持一致。最常见的 YUV422 格式输入后,内部只能处理成 YUV420 格式,并输出到 memory 存以 NV12布局形式。原创 2023-11-15 10:00:01 · 619 阅读 · 0 评论 -
全志R128应用开发案例——获取真随机数
R128 内置了TRNG,一个真随机数发生器,随机源是 8 路独立的环形振荡器,由模拟器件电源噪声产生频率抖动,用低频始终重采样,然后进行弹性抽取和熵提取处理,最终输出128bit真随机数。原创 2023-11-13 16:31:10 · 87 阅读 · 0 评论 -
在全志XR806上移植st7789屏幕驱动
很高兴有机会参加本次极术社区举办的“「免费试用」搭载安谋科技STAR-MC1的全志XR806 Wi-Fi+BLE 开发板试用活动”。去年就对全志的mcu芯片感兴趣了,一直没有机会接触,看到本次极术社区提供的全志wifi + BLE开发板试用,就马上参加了。板子拿到手之后,很快就搭建好了环境,由于自己时间安排的问题,一直没有空搞,这两天赶紧搞了一下。原创 2023-11-10 10:19:56 · 272 阅读 · 1 评论 -
全志T507-H技术帖 | 去掉IO扩展芯片后保留扩展引脚功能的实现方法
飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的功能接口,而实际上OKT507-C开发板的CPU引脚资源是比较紧缺的,那么它究竟是如何提供如此丰富的接口资源的呢?以上就是OKT507-C开发板去掉IO扩展芯片后保留扩展引脚功能的实现的方法,本文使用的思路和方法仅供参考使用,其它Arm开发板虽然芯片不同,但思路和方法有很多的共性,希望对您在板卡的使用中能够有所帮助。本文将选用OKT507-C开发板的LCD功能引脚来重新复用为这些功能,用户可根据自己的实际功能需求情况选择。原创 2023-11-09 17:13:17 · 127 阅读 · 0 评论 -
全志XR806实现简单的家用环境监测传感器
作为一个环境监测传感器,它能够获取当前的温度,湿度,气压,海拔这四个参数,同时能够通过外部的屏幕实时显示刷新.在2023年的当下,能够联网上报信息的功能不可或却.原创 2023-11-03 10:16:17 · 216 阅读 · 1 评论 -
全志R128应用开发案例——适配SPI驱动ST7789V2.4寸LCD
同时,提供了 SPILCD 驱动框架以供 SPI 屏幕使用。此次适配的SPI屏为,使用的是 SPI 进行驱动。原创 2023-11-02 13:36:30 · 556 阅读 · 0 评论 -
如何将R128的lspsram频率提高至200M?
证明当前加载的是lspsram型号为APS64,频率为192MHz。若将频率切换成200MHz,此处的打印就会改成"freq 200000000"。然后重新编译boot0,就可以让lspsram初始化为200M了。##二、根据log查看频率。原创 2023-10-30 13:37:52 · 158 阅读 · 0 评论 -
全志R128基础组件开发指南——SPI LCD 显示驱动
当前板级显示支持两种配置方法,一是使用 `sys_config.fex` 的方式进行配置,二是在不支持`sys_config.fex` 情况下,可以通过显示驱动私有的方式进行配置。下面分别对两种方式进行说明。原创 2023-10-25 14:36:06 · 1054 阅读 · 0 评论 -
【全志R128开发经验分享】启用USB ADB以及无线ADB配置方法
5、出现如上图的connect to 板子ip地址的字符,表示已经连接成功。相对于原来的命令多了“:5556”,原来的命令是自动省略端口“:5555”。1、首先让笔记本与板子,都连上共一个wifi,使其处于局域网的状态。当上面配置全部选上后,编译烧录即可使用无线adb调试功能。USB ADB的配置比较常规,注意以下几个驱动的勾选。6、接下来就可以运行adb的一些调试命令了。无线adb的端口,默认为5555。命令确认笔记本是否能连接上板子。配置是开启无线adb的配置。配置好的图片如下图所示。原创 2023-10-24 17:28:31 · 297 阅读 · 0 评论 -
全志R128应用开发案例——获取真随机数
R128 内置了TRNG,一个真随机数发生器,随机源是 8 路独立的环形振荡器,由模拟器件电源噪声产生频率抖动,用低频始终重采样,然后进行弹性抽取和熵提取处理,最终输出128bit真随机数。原创 2023-10-24 17:05:26 · 114 阅读 · 0 评论 -
全志R128适配SPI驱动ST7789V2.4寸LCD
同时,提供了 SPILCD 驱动框架以供 SPI 屏幕使用。此次适配的SPI屏为,使用的是 SPI 进行驱动。注意请购买带 CS 引脚的 SPI 屏幕,由于 ST7789v SPI 时序问题,CS 引脚直接接地可能会导致初始化无法写入。如果很不幸SPI TFT是不带 CS 的,请飞线出来连接 CS 引脚(如图所示)原创 2023-10-23 09:58:03 · 544 阅读 · 0 评论 -
全志R128软件配置——RTOS 软件包配置
有过 linux 内核开发经验的人,对 menuconfig 不会陌生。对于各类内核,只要是支持 menuconfig 配置界面,都是使用 Kconfig。menuconfig:支持配置内核的图形化界面。Kconfig:生成 menuconfig 界面的脚本语言。我们运行 mrtos_menuconfig 之后,会打开如下图所示的界面整个显示界面大致分为三部分上方是操作的说明和图例说明。按下Enter键进入子菜单。按下Y键,选中这项功能。按下N键,排除这项功能。原创 2023-10-20 15:30:55 · 377 阅读 · 0 评论 -
全志R128驱动OLED屏幕步骤教程
OLED,即有机发光二极管( Organic Light Emitting Diode)。 OLED 由于同时具备自发光,不需背 光源、对比度高、厚度薄、视角广、反应速度快、可用于挠曲性面板、使用温度范围广、构造及 制程较简单等优异之特性,被认为是下一代的平面显示器新兴应用技术。LCD 都需要背光,而 OLED 不需要,因为它是自发光的。这样同样的显示 OLED 效果要来得好一 些。以目前的技术,OLED 的尺寸还难以大型化,但是分辨率确可以做到很高。在此我们使用的 是0.96寸OLED显示屏,该屏有以下特原创 2023-10-17 15:45:47 · 144 阅读 · 0 评论 -
一些FreeRTOS系统的usb命令使用方法
USB0较为特殊,host和device的参数是分开调整的,注意打印,例如上述例子中,“OTG0 phy range”表示目前处于device模式,显示的是device端的phy range。在全志R128开发过程中总结一些RTOS系统的usb命令使用方法,以下命令在所有RTOS平台(MELIS/FREERTOS)都可以使用。同理,“OTG0 phy range”表示目前处于device模式,设置的是device端的phy range。RTOS通过usb命令集成了测试用例。原创 2023-10-16 13:56:01 · 265 阅读 · 0 评论 -
适配LVGL界面图片和文字显示很虚,色阶明显的解决方法(全志R128适用)
文档链接:https://r128.docs.aw-ol.com/sdk_base/disp/#480x480-rgb-86。查找R128在线文档显示与屏幕驱动相关内容,选择一下参数进行配置,后解决问题。LVGL界面图片和文字显示很虚,色阶明显的具体问题情况如下图。初步分析为RGB参数问题,先调出Colorbar检查一下。检查杜邦线连接很紧,排除干扰导致的文字显示虚化。修复好之后的显示效果,一切正常了。此时问题可能出现在两个方向。1、rgb接线不稳定有干扰。2、色彩级数配置问题。原创 2023-10-16 13:25:00 · 654 阅读 · 0 评论 -
全志R128芯片 基础组件开发指南——RTOS 多媒体解码
介绍 FreeRTOS 下如何使用 rtplayer 的接口来开发播放器应用程序,方便播放器开发人员快速正确地开发,以及播放器测试人员如何根据该文档对 rtplayer 播放器进行验证测试。这张状态转换图清晰地描述了 rtlayer 的各个状态,也列举了主要的方法的调用时序,每种方法只能在一些特定的状态下使用,否则会出错。另外,只有在 Prepared、Started、Paused、Play‑backCompleted 这四种状态下可以进行 seekTo() 操作,并且 seekTo() 之后,状态不变。I原创 2023-10-10 13:47:43 · 228 阅读 · 0 评论 -
全志R128应用开发案例——点亮一颗 LED 灯
本文章为DshanMCU-R128s2-DEVKIT应用开发案例,本文案例(点亮一颗 LED 灯)代码可以到全志在线开发者论坛-在线文档处下载原创 2023-10-09 09:46:52 · 198 阅读 · 0 评论 -
解决那些千奇百怪的 Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block 错误
看设备名:ubiblock0_5,ubixxxx 表示这是一个 SPI NAND 设备,如果是 SPI NOR 那一般是 mtdxxxx。这一般是因为 rootfs 的数据错误,看一下是不是打包错了,把uboot打包进rootfs里了,或者是。错误描述:rootfs格式设置都是正确的,驱动也有,但是还是打印分区表然后提示没有可供挂载的格式。再看看我们实际的启动设备,是eMMC,是一个MMC设备,应该是。错误描述:rootfs格式设置都是正确的,驱动也有,报错。不用慌,这只是一个障眼法,它真正的报错是。原创 2023-07-31 10:25:33 · 6852 阅读 · 1 评论 -
全志T113在内核中采用硬解jpeg方式实现开机动画
主要实现思路:在kernel中,将jpg图片通过VE解码,连续显示形成动画。先将视频按帧截取成jpg图片,打包成特定格式的二进制文件。把资源包放入到一个指定分区中,在uboot阶段加载资源包,并告知kernel将资源包的内存区域保留出来。从emmc读取整个分区,分区越大耗时越久,可适当减少分区大小。资源包的制作和内核中读取的格式相对应,如有需要可自行拓展。注意编解码VE和显示DE驱动代码的初始化的先后顺序。控制功能的开启关闭。原创 2023-05-31 09:10:28 · 504 阅读 · 0 评论 -
全志芯片Tina Linux 修改 UART 引脚、UART端口 (2)
的路径是中的修改后修改前修改后增加下列内容修改前修改后需要修改为 UART3 的地址,查阅手册可知为。原创 2022-11-02 09:52:19 · 788 阅读 · 0 评论 -
树莓派价格暴涨买不起?他们自己做了一块价格还不到1/4的开发板平替树莓派,还火到海外去了
CB1配置的40-pin GPIO接口,兼容树莓派生态,PI4B底板预留5V风扇接口、千兆以太网接口、CSI,DSI接口、MicroSD插槽以及4个USB接口等可拓展功能接口。当然,PI4B板框与接口大小与树莓派4B和CM4的连接无异,所以你也可以将树莓派CM4接到PI4B上,以达到与树莓派4B一样的使用效果。但是树莓派价格暴涨,令其不得不寻找新的替代方案。与动辄¥600+才能买到的CM4相比,CB1的价格就十分美丽了,核心板CB1单板仅需¥138,加上与底板的套装也不过¥228。原创 2022-10-25 17:32:16 · 5612 阅读 · 2 评论