
全志-FAQ
文章平均质量分 58
小文哥嵌入式开发
芯片原厂/嵌入式开发/LInux/FAE/捏脚大汉/垃圾佬。本博客所有内容都是本人瞎几把写的或者抄的,和本人所在公司没有任何关系。本博客所有内容都可以在注明作者和出处的情况下转载,不用问我。
展开
-
全志R128入门编写HelloWorld
本文将介绍使用 R128 开发板从串口输出 HelloWorld 的方式介绍 SDK 软件开发流程。原创 2023-12-29 09:37:12 · 528 阅读 · 0 评论 -
GIT具体配置步骤详解
SDK 使用 Repo 工具管理,拉取 SDK 需要配置安装 Repo 工具。原创 2023-12-22 14:21:03 · 735 阅读 · 0 评论 -
全志XR806开发板RTOS环境搭建及问题
按照官网文档https://xr806.docs.aw-ol.com/rtos/env/说明,RTOS先拉取SDK,由于XR806是Cortex-M33 Star内核然后指定gcc-arm-none-eabi工具链的位置,再编译再烧录,开发过程和ESP32有些许相似,都可以借助Cygwin+gcc来编译,且都支持menuconfig进行模块裁剪,不复赘述,以下重点讲遇到的问题。然后就能验证环境可行性,在tools目录下敲击sudo ./phoenixMC -i …解决办法:重装CP2102驱动,很坑。原创 2023-12-13 13:39:15 · 128 阅读 · 0 评论 -
全志R128内存泄露调试案例
硬件:R128软件:FreeRTOS + rtplayer_test(Cedarx)+ AudioSystem。原创 2023-12-11 10:56:40 · 165 阅读 · 0 评论 -
【分析笔记】全志 T507 PF4 引脚无法被正常设置为中断模式的问题分析
全志原厂提供的 SoCs pinctrl driver 中的 PG4 中断信息描述错误,导致覆盖了 PF4 的引脚编号,因此只要修正 PG4 的描述信息,即可解决问题。这个问题不仅仅会影响 PF4 无法使用,也会影响 PG4 引脚无法使用,从代码来看,想要设置为 PG4 为中断模式,实际修改的会 PA0(0)。转载 2023-11-24 10:55:21 · 177 阅读 · 0 评论 -
全志R128内存泄漏调试案例
硬件:R128软件:FreeRTOS + rtplayer_test(Cedarx)+ AudioSystem。原创 2023-11-20 16:53:28 · 178 阅读 · 0 评论 -
全志Tina Linux下busybox init 简介
系统默认使用的是tina/package/busybox-init-base-files/files/etc/init.d/rc.modules脚本进行内核模块自加载,用户可在tina/target/allwinner/XXX/busybox-init-base-files/etc/init.d/下创建rc.modules,自定义rc.modules。(5)执行/etc/init.d/rc.modules,加载内核模块。(3)执行/etc/init.d/rc.log,配置系统log信息。原创 2023-11-15 09:35:47 · 784 阅读 · 0 评论 -
全志T507-H技术帖 | 去掉IO扩展芯片后保留扩展引脚功能的实现方法
飞凌嵌入式推出的OKT507-C作为一款广受欢迎的开发板拥有丰富的功能接口,而实际上OKT507-C开发板的CPU引脚资源是比较紧缺的,那么它究竟是如何提供如此丰富的接口资源的呢?以上就是OKT507-C开发板去掉IO扩展芯片后保留扩展引脚功能的实现的方法,本文使用的思路和方法仅供参考使用,其它Arm开发板虽然芯片不同,但思路和方法有很多的共性,希望对您在板卡的使用中能够有所帮助。本文将选用OKT507-C开发板的LCD功能引脚来重新复用为这些功能,用户可根据自己的实际功能需求情况选择。原创 2023-11-09 17:13:17 · 317 阅读 · 0 评论 -
全志A40i应用笔记 | 3种常见的网卡软件问题以及排查思路
出现"Initialize hardware error",一般是由于phy没有输出RX CLK至MAC控制器,导致MAC控制器内部soft reset失败,常见原因是phy供电异常或25M时钟异常;以上是我们在OKA40i-C开发板的使用过程中常见网卡设计问题,有些可能是因为大家在参考方案时出现了配置问题,或者是因为芯片输出的信号不正常导致。出现"No phy found",常见原因是供给phy使用的25M时钟异常,导致phy工作不正常,gmac驱动通过mdio接门也读不到phy的设备信息。原创 2023-11-08 10:01:39 · 751 阅读 · 0 评论 -
为全志T507-H开发板配置Samba服务,高效实现跨系统的文件共享
作为一款经典的国产芯,全志T507-H芯片被广泛应用于车载电子、电力、医疗、工业控制、物联网、智能终端等诸多领域当中,而在各种复杂的嵌入式Linux应用场景当中,“打通ARM板卡与Windows设备间的壁垒以实现跨平台的文件共享”是一项不能被忽视的重要功能,那么该如何做到这一点呢?我们可以使用Samba,这是一款在Linux系统上实现SMB的免费软件,可以在不同操作系统之间实现文件和打印机的共享。使用Samba可以方便地在Linux、Windows和Mac等不同平台之间共享文件,大大提高了文件的传输效率。原创 2023-11-08 09:33:30 · 154 阅读 · 0 评论 -
详解全志R128 RTOS异构多核通信原理
R128 所带有的 M33 主核心与 C906, HIFI5 DSP 核心是完全不同的核心,为了最大限度的发挥他们的性能,协同完成某一任务,所以在不同的核心上面运行的系统也各不相同。这些不同架构的核心以及他们上面所运行的软件组合在一起,就成了 AMP 系统 (Asymmetric Multiprocessing System, 异构多处理系统)。为了多核心协同工作,对于需要异构多核通信框架需要满足以下功能:针对异构多核系统的特性,在进行远程服务调用时,需要解决以下几个问题:为了解决这些问题,提供了 Sunx原创 2023-11-02 13:45:59 · 2299 阅读 · 0 评论 -
全志R128蓝牙占用内存资源较大,修改menuconfig配置后经常编译不过或无法运行解决方法
2、使用menuconfig修改配置CONFIG_BT_SMP关闭可以减少很多内存,但是编译出错,提示缺少smp_null.c。1、使用menuconfig修改配置CONFIG_BT_VAR_MEM_DYNC_ALLOC=y,后初始化蓝牙失败。CONFIG_BT_VAR_MEM_DYNC_ALLOC配置问题,修改方法如下。R128蓝牙占用内存资源较大,尝试修改过以下两处的蓝牙配置,修改后再重新编译就会失败。CONFIG_BT_SMP 配置问题,下面内容保存为smp_null.c 放到。原创 2023-11-01 09:56:26 · 220 阅读 · 0 评论 -
全志R128芯片如何解决打包时出现的ERROR: update_mbr failed?
打包出现:ERROR: update_mbr failed这是因为 rtos_riscv.fex 太大了,分区容量设置过小。原创 2023-11-01 09:42:57 · 616 阅读 · 1 评论 -
如何将R128的lspsram频率提高至200M?
证明当前加载的是lspsram型号为APS64,频率为192MHz。若将频率切换成200MHz,此处的打印就会改成"freq 200000000"。然后重新编译boot0,就可以让lspsram初始化为200M了。##二、根据log查看频率。原创 2023-10-30 13:37:52 · 224 阅读 · 0 评论 -
【全志R128外设模块配置】USB外设功能配置
USB 功能模块包括了USB Host,USB Device 和OTG 功能。USB Host 目前已经支持上的功能有:Mass Storage,UVC。USB Device 目前已经支持上的功能有:ADB,UAC。OTG 主要用作Host 与Device 的切换,如当板子通过 USB 线连接到 USB 主机 (PC) 上时,此时 OTG 是加载成 USB Device;若当前板子是通过 OTG 线连接一个USB 设备,此时 OTG 则加载成 USB Host。sys_config.fex 中主要是对原创 2023-10-30 11:36:33 · 1143 阅读 · 0 评论 -
【全志R128填坑分享】适配LVGL界面图片和文字显示很虚,色阶明显的解决方法
查找R128在线文档显示与屏幕驱动相关内容,选择一下参数进行配置,后解决问题。LVGL界面图片和文字显示很虚,色阶明显的具体问题情况如下图。初步分析为RGB参数问题,先调出Colorbar检查一下。检查杜邦线连接很紧,排除干扰导致的文字显示虚化。修复好之后的显示效果,一切正常了。此时问题可能出现在两个方向。1、rgb接线不稳定有干扰。2、色彩级数配置问题。原创 2023-10-26 16:52:29 · 524 阅读 · 1 评论 -
全志R128 BLE最高吞吐量测试正确配置测试
在L2CAP Data之上还有4个字节的头部,因此L2CAP的Payload为251-4=247字节,即一次可以传输247字节的ATT data。而在ATT Data之上还有3个字节的头部,所以ATT的payload为247-3=244字节,即一次可以传输244字节的应用数据。在蓝牙4.2版本之后,BLE(蓝牙低功耗)开始支持DLE(也称为长包),使用长包可以使单个BLE数据包传输的payload达到251字节。(2)若我放作为GATTS,一般支持蓝牙的5.0的手机设备默认有PHY UPDATE的动作。原创 2023-10-26 16:45:49 · 311 阅读 · 0 评论 -
全志R128休眠流程前期卡住问题定位思路
本文在开发过程中或新设备模块添加到休眠框架后,发现前期休眠流程卡住时的快速定位思路。其中前期休眠流程指全局中断未关闭,系统仍可输出log的阶段。在全局中断未关闭,系统可输出log的阶段,AMP框架仍可正常使用,因此可用另一个核来监控本核的状态或触发本核的backtrace;上电后DSP使能一个软件唤醒源,此时不会休眠DSP,例如DSP输入。需要利用休眠不会被清空的寄存器,确认卡住前的最近一次写入情况;需要利用休眠不会被清空的寄存器,确认卡住前的最近一次写入位置;快速定位C906卡住位置。原创 2023-10-25 15:06:26 · 195 阅读 · 1 评论 -
【全志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 · 575 阅读 · 0 评论 -
全志R128应用开发案例——获取真随机数
R128 内置了TRNG,一个真随机数发生器,随机源是 8 路独立的环形振荡器,由模拟器件电源噪声产生频率抖动,用低频始终重采样,然后进行弹性抽取和熵提取处理,最终输出128bit真随机数。原创 2023-10-24 17:05:26 · 166 阅读 · 0 评论 -
如何给R128在FreeRTOS下配置/data目录
在调试音频、usb等模块时,会发现SDK的根目录下没有/data该目录,导致无法存储所需要的文件,这就是因为/data目录没有配置好的原因。原创 2023-10-23 15:34:04 · 129 阅读 · 0 评论 -
全志R128外设模块配置——ADC按键配置方法
FreeRTOS平台上使用的按键为ADC-KEY,采用的ADC模块为GPADC。按键功能驱动的实现是通过ADC分压,使每个按键检测的电压值不同,从而实现区分不同的按键。按下或者弹起中断之后,通过中断触发,主动检测当前电压识别出对应的按键。最后再通过input子系统将获取按键的键值并上报给应用层。原创 2023-10-20 11:03:41 · 522 阅读 · 0 评论 -
在全志R128上启用USB ADB以及无线ADB配置方法
5、出现如上图的connect to 板子ip地址的字符,表示已经连接成功。相对于原来的命令多了“:5556”,原来的命令是自动省略端口“:5555”。1、首先让笔记本与板子,都连上共一个wifi,使其处于局域网的状态。当上面配置全部选上后,编译烧录即可使用无线adb调试功能。USB ADB的配置比较常规,注意以下几个驱动的勾选。6、接下来就可以运行adb的一些调试命令了。无线adb的端口,默认为5555。命令确认笔记本是否能连接上板子。配置是开启无线adb的配置。配置好的图片如下图所示。原创 2023-10-17 17:16:08 · 549 阅读 · 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 · 1609 阅读 · 0 评论 -
全志H616在低温reboot过程中进入休眠解决方法
所以这个时候是刚好在reboot的过程中,安卓执行休眠打断了reboot并且休眠成功。一般建议做reboot老化的时候要关掉休眠,之前也出过类似现象。H618在DDR物料适配支持时候,reboot实验异常进休眠,在reboot老化测试中报如下log1。从kernel的log来看,安卓层先发起了reboot,内核也收到reboot的消息。reboot老化的过程中,reboot的过程被暂停了,并且进入了standby。在reboot老化的时候,关闭休眠。全志及开发者最新动态可以关注。原创 2023-09-26 10:19:13 · 343 阅读 · 0 评论 -
使用全志F1C200S TINA3.5 spinand来烧写固件几个常见问题的解决方法
2、但烧录进去不代表你flash驱动中的ID配置一定是正确的,有可能你拿到的flash驱动中对这颗物料的参数配置(坏块标记位、oob区域划分、ecc校验能力等)配置不正确,导致你第一次烧录的时候,在这颗flash上误标记了bad block,故后续烧录或者启动会提示很多的“bad block…3、建议找一个常用型号的flash,先替换上去,看下是否能正常启动,可以试一下这款(MX35LF1GE4AB),这款在很早之前的驱动已经是支持的了。1,空的nand第一次似乎提示烧写成功,但启动失败。原创 2023-09-22 09:43:13 · 1125 阅读 · 0 评论 -
新SDK平台下载开源全志V853的SDK
SDK 使用 Repo 工具管理,拉取 SDK 需要配置安装 Repo 工具。原创 2023-08-28 09:35:55 · 1131 阅读 · 2 评论 -
全志V851S开发版无法正常挂载TF卡,sdc0、sdc1报错
SDK版本:Yuzukilizard的github上的Docker镜像。主板为:Yuzuki Lizard V851S开发板。宿主机环境:ubuntu 22.04。4. 修改board.dts如下位置。原创 2023-07-28 10:08:16 · 2797 阅读 · 3 评论 -
全志芯片驱动lcd使用pwm作为背光控制亮度调节异常的解决方法
在修改完成后,编译打包,确认版型后烧录测试,先看板子能不能起来,起不来的话证明电压极性有误,可以拿万用表测量一下电压,看启动阶段电压有没有发生突变。该修改主要是针对regulator使用pwm进行调压,会在dts中配置pwm调压的极性,为了保证与uboot阶段的电压一致,现在需要把dts中配置的极性的值置位1。具体内核操作可追流程。搞定了,是当前内核pwm框架与我们的pwm驱动对于极性的判断相反导致,并且kernel阶段的pwm极性与uboot阶段的不一致。如果相应的引脚外接了示波器,可以看到相关的波形。原创 2023-07-13 15:21:52 · 1745 阅读 · 0 评论 -
使用全志方案遇到glibc库版本低以及编译报错的解决方法
Glibc 包含了linux一些主要的C库,用于分配内存、搜索目录、打开关闭文件、读写文件、字串处理、模式匹配、数学计算等,在遇到glibc库版本低编译还报错的情况时,遵循以下步骤解决。原创 2023-06-25 09:45:18 · 1853 阅读 · 0 评论 -
几个直接在TigerISP上查看全志芯片接Sensor分辨率的方法
(1)打开摄像机应用,拍摄一张照片,再执行命令cat /sys/kernel/debug/mpp/vi,结果如下图,可以看到,Sensor名称为ov5648_mipi,Vich可以选择0,则对应ISP选择0,分辨率为2592*1944,帧率为1000/avg=10。类似上述方法2,Sensor名称可以填一个已知的名称,例如gc2053_mipi,分辨率填1920*1080, 30fps,其他选择默认,点击连接工具,再通过adb shell执行两个命令即可看到分辨率等。原创 2023-06-13 17:25:49 · 748 阅读 · 1 评论 -
关于全志T113开发板接7寸LCD屏幕显示异常问题的解决方案
2.width和height主要是用来计算dpi使用的,我这里写的280最终计算出来的dpi大概是97左右,windows标准的是96,反正相差无几我也没有细调了,lcd_x和lcd_y在原来的代码里主要是用来计算内核里面有一张图片的缩放使用的。1.设备树里面timing,除了width、height、lcd_x和lcd_y之外的参数全没有用上(一开始不停的源码里面找这些参数在什么地方配置的,最后发现特么的根本就没有地方使用过这些参数)这里就不给分析经过了,因为是真的真的太漫长了,搞得我头都大了。原创 2023-05-17 10:14:41 · 1748 阅读 · 0 评论 -
全志系列芯片如何在Tina Linux中使用脚本完成定制化升级?
2.在swupdate文件夹下创建脚本,名字随意,在脚本中写入要实现的功能。例如:目前有一个方案需要升级,但是分为A,B两种产品,对应做了不同的功能,为了防止升级混淆,可以利用脚本去控制变量升级,比如A产品方案中的env,可以添加一个变量project=a,B产品方案中的env添加一个变量project=b,那么脚本中的内容就可以判断project=a或b时,继续完成升级。在进行下面的配置后,输入升级命令时,首先开始执行脚本中的内容,满足升级条件后,再进行升级流程。原创 2023-03-20 10:00:29 · 734 阅读 · 0 评论 -
全志R128芯片 如何在FreeRTOS下对代码源文件进行快速预处理?
客户在日常的开发过程中,会碰到源文件中有许多的宏或许多条件编译的代码,有时候需要快速确认多个宏展开后的内容或快速确认条件编译到底编译的是哪一部分代码。这个文件里包含了编译此源文件时依赖的一些头文件以及编译时使用的编译命令,通过修改编译命令将编译时的-c参数修改为-E参数即可完成对源文件的预处理。可以手动从.xxx.o.cmd文件中拿到编译命令并修改,但这适用于要预处理的文件比较少的情况,且各个源文件的编译命令的修改过程基本相同,脚本输出的日志中最后2行会有生成的预处理文件的路径。软件:FreeRTOS。原创 2023-03-17 10:21:57 · 801 阅读 · 0 评论 -
全志R128芯片 在FreeRTOS下如何查看并更改RISC-V 和 ARM 两个CPU核的默认运行频率?
DPLL1输出时钟的频率已经确定为1920M,因此要修改C906核的时钟,则只需要修改这2个分频器的分频值即可,第一个分频器的分频值可取2、2.5、3、4、7,第二个分频器的分频值可取1、2、4、8。DPLL3输出时钟的频率已经确定为1600M,因此要修改DSP核的时钟,则只需要修改这2个分频器的分频值即可,第一个分频器的分频值可取3、4、5、6、7,第二个分频器的分频值可取1、2、4、8。DPLL1输出时钟的频率已经确定为1920M,因此要修改M33核的时钟,则只需要修改这2个分频器的分频值即可。原创 2023-03-15 09:38:47 · 1566 阅读 · 0 评论 -
全志V85x芯片 如何使用tiger lcd时lti锐化功能时程序abort?
修改platform/allwinner/display/pqd/hardwares/de20x/de20x.c中de20x_set_lti和de20x_get_lti函数malloc的大小为LTI_REG_NUM,具体方式可参考如下补丁。可以看出问题在platform/allwinner/display/pqd/hardwares/de20x/de20x.c文件中的de20x_set_lti里。重新编译并将未strip过的可执行文件用adb推至/usr/bin下,重新复现问题,得到如下信息。原创 2023-03-13 15:52:47 · 515 阅读 · 0 评论 -
全志V853芯片放开快启方案打印及在快起方式下配置isp led的方法
如何放开快启方案的打印和isp led的配置原创 2023-03-10 09:32:16 · 498 阅读 · 0 评论 -
全志V853芯片 Tina Linux下网络ADB内存泄露如何修复?
再在register_socket_transport()中calloc结构体atransport前后添加打印发现,每次adb connect时,都会重新调用register_socket_transport()去注册传输所需要的资源,并且会重新申请一篇内存。根据log信息以及对比源码能够发现,在调用transport.c的transport_registration_func()函数时,当读到的action等于0,即退出adb时,就会free掉一些之前malloc的指针。原创 2023-03-06 10:26:18 · 975 阅读 · 0 评论 -
全志V853芯片 如何在Tina V85x平台切换sensor?
V85x某方案目前默认Sensor是GC2053。实际使用时若需要用到GC4663(比如wdr功能)和SC530AI(支持500W),可按如下步骤完成切换。适配后,通过make menuconfig修改sensor为gc4663。添加后,重新mkernel即可编译出GC4663驱动的ko文件。其中,I2C地址可以从GC4663 Sensor驱动中找到。下面以GC4663为例,SC530AI按相应方式适配。若没有sensor对应的效果文件,则需要先添加和适配。原创 2023-02-13 10:51:52 · 914 阅读 · 0 评论 -
全志V系列芯片如何实现mpp sample外编?
用户希望Tina SDK 能提供编译工具链,多媒体库和头文件,使得自己编写的应用能编写Makefile 去链接多媒体库来编译生成app应用。本编译系统是一个演示全志V系多媒体mpp sample 脱离Tian SDK 编译的并编译后放到rootfs下重新做固件的一个demo。搜到AW_MPI_SYS_Init 结果在libaw_mpp.a库里面。请下载附件的编译系统,并放到linux 上运行。如果需要增加/裁剪功能,则编译出来可能就多或少一些库了。如果需要增加/裁剪,则编译出来可能就多或少一些库了。原创 2023-01-29 09:59:32 · 702 阅读 · 2 评论