![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
君正设备开发
文章平均质量分 90
li_wen01
liwen01
展开
-
T31快启图像效果优化
根据官方的说明,君正系列,在T20系列,可以直接使用应用层软件直接采adc值与稳定的ev值但是在T30,T31芯片上,因为启动的时候ADC其实还未稳定,所以只能是采集启动时boot的adc值,与内核打印中稳定的ev值相互对应,不然会出现不准确的现象原创 2022-10-29 09:59:39 · 2425 阅读 · 1 评论 -
unix domain 与本地本地回环在进程间通信中的差异
前言: 127.0.0.1它是一个私有IP,代表的就是你的本机环回地址,其实本质上是绑定在虚拟网卡(loopback)上的IP。在实际应用中,有遇到在使用本地回环做进程间通讯的时候程序阻塞的情况。比如下面代码(一)本地回环: 客户端数据收发程序:static int send_recv(char *cmd, int *ret, char* strResult, int nSize){ struct sockaddr_in sin; struct sockaddr_in cin; int原创 2021-03-31 15:02:01 · 1283 阅读 · 0 评论 -
君正Zeratul开发(6)——为什么禁止使用system
文章目录(一)前言(二)为什么危险(1)实现(2)执行:(3)返回值:(4)危险的原因(三)为什么不建议在主进程中执行引用:(一)前言在很多嵌入式设备开发中,很多平台明确规范,禁止在主程序中使用system 等系统调用接口函数,需要在另外的一个守护进程中去实现system函数的功能。这里有两个问题:1.system函数有哪些不安全的地方? 2.为什么不可以在主进程中去执行system,而在守护进程中却可以?(二)为什么危险system 源码实现int system(const char * cmd原创 2021-03-31 20:25:54 · 2335 阅读 · 7 评论 -
君正Zeratul开发(5)——快速启动优化
前言: Camera 需要快速启动, 以第一时间抓拍到图像,君正官方给的第一帧图像是200ms,实际应用中时间会长不少。1.尽快运行主程序 主程序应该放置在 rootfs 中并第一时间加载运行。 例如在 rcS 中, 在环境变量设置完成之后即可运行主程序 主程序依赖的动态库要放在 rootfs 中, 例如 libimp.so 主程序启动后首先初始化视频, 之后可以并行处理其他的业务(比如 P2P、 认证鉴权等等) 如果对某些配置文件有依赖, 例如 config 分区下的配置文件, 可以使用如下原创 2021-03-31 20:25:43 · 2728 阅读 · 0 评论 -
君正Zeratul开发(4)——图像效果调试
前言 目前而言,君正设备的isp 图像效果还是君正的工程师在负责开发调试,如果需要添加一款新的摄像头,一般也是将新摄像头的驱动,从ISVP 版本移植到Zeratul平台。这里主要介绍:(1)摄像头驱动移植;(2)快启图像效果优化;(3)宽动态效果(一) Sensor驱动移植 Zeratul平台 是从ISVP平台优化过来的,所以很多Sensor 驱动也是需要从ISVP平台移植到Zeratul平台。其中分为两个步骤:以gc2053 Sensor为例: **Step 1 添加sen原创 2021-03-31 20:25:33 · 6462 阅读 · 4 评论 -
君正Zeratul开发(3)——升级回滚
升级 升级有两种方案:直接升级方案,recovery 升级 直接升级方案与其他嵌入式设备升级方式一样,就是从不同地方(OTA,U盘,TF卡等)获取升级文件,然后将需要升级的数据烧录到指定的flash分区地址去就可以了。 recovery 升级是当系统启动异常或是接收到recovery命令的时候,设备进入recovery模式,这个模式是一个精简的系统,一般只初始化跟升级相关的外设,一般也只进行升级相关的业务。 直接升级直接升级方案的几个分区升级方法如下: boot: 系统启动后 boot 分区不原创 2021-03-31 20:25:24 · 1454 阅读 · 0 评论 -
君正Zeratul开发(2)——uboot启动分析
前言 boot启动一般分为两个阶段,君正设备的第一阶段uboot spl 程序没有开源,用户编译的是第二阶段的boot,最后将两个阶段的boot合并到一起,写入到boot分区中去,boot分区如下(一)SPL (secondary program loader) SPL(secondary program loader)是一个十分小的bin文件,它是用来引导主u-boot文件。对于一些SRAM很小的SOC,无法一次性加载ROM中的bootloader到SRAM中,因为一般SRAM远远小于b原创 2021-03-31 20:25:10 · 4100 阅读 · 1 评论 -
君正Zeratul开发(1)——分区启动分析
文章目录(一)整体分区(二)Tag 分区(1)tag 损坏说明:(2)T31 RISCV(三)启动流程(一)整体分区1234567boottagkernelrootfsrecoverysystemconfig0.25M352K4M~5M2M~3M2M~2.5M4512K512K● boot 分区存放 bootloader● tag 分区存放系统启动参数, 包括 cmdline, Senso init setting, env 参数, b原创 2021-03-31 20:24:58 · 2673 阅读 · 4 评论 -
君正Zeratul开发(0)——序言及目录
前言 2020年疫情加上海思供货紧缺,导致很多方案开始找相应的替代方案。对于海思低功耗视频方案,君正T31 Zeratul 是一个比较理想的替代方案。君正低功耗方案,因为向前的使用量并不算大,所以整个方案并不算是非常成熟。开发文档和资料跟海思相比还是有些差距,在使用的过程中,也依然还有不少问题需要持续优化。 我就自己在使用君正T31 Zeratul 中遇到的问题及一些知识点整理成文章,以便日后自己查看,也可供大家参考。 (一)Zeratul 与ISVP的区别 Zeratul 是基于君正 T 系列芯原创 2021-03-31 20:24:31 · 4988 阅读 · 4 评论