君正T32VN开发笔记


前言

AOV(Always on Video)是一种通过超低功耗硬件设计与智能算法结合,实现7×24小时持续录像的网络摄像机技术,其核心在于解决传统低功耗设备在无事件触发时没有录像的问题,同时将待机功耗降至可以忽略的水平。加上太阳能电池板的补电功能,实现常电摄像机所具有的全天录像功能。

T32作为北京君正新一代SOC芯片,尤其适合低功耗的物联网摄像机应用。

1、4K(2160P)@25fps,支持原生双摄/三摄。
2、1T@int8 算力,全新架构,算子算法丰富。
3、 全新 Tiziano-v4.0 ISP,星光夜视画质全面提升。
4、 Hera-v1.2 视频编码,码率更加极限,支持智能编码。
5、 100ms 级快速启动,Atlas(AOV)普惠升级。
6、 同一套硬件软件覆盖各种应用品类

T32VN芯片,支持片上RTC,支持休眠和唤醒,可以拿来做电池供电的AOV产品。


一、编译AOV固件:

参考:\T32_1.0.6_SDK\Tassadar-T32-1.0.6_IVSP\software\doc\zh\zeratul
《T32_Atlas_使用说明.pdf》, 《T32_Atlas_Sensor使用说明.pdf》
首先设置zeratul的开发环境,内核选定3.10版本。

1、编译内核:

编译3.10的内核后才能编译驱动,首先要编译出来内核镜像。
make PRJ007_zeratul_nor_camera_atlas_defconfig;make uImage -j4

2、修改初始化程序:

(主要是SOC的RESET和sensor的PWDN脚,注意要和实际的一致)
Ingenic-SDK-T32\resource\tools_PRJ007\zeratul\make_tag\sensor_init_setting\PRJ007_sc200ai_init.c
在这里插入图片描述

PA18(sensor的PWDN)默认下拉,
在这里插入图片描述

3、编译驱动:

(ISP和sensor的驱动)
在这里插入图片描述
opensource\kernel-3.10.14\arch\mips\xburst\lib\isp-PRJ007\sensor
在这里插入图片描述
在这里插入图片描述
Ingenic-SDK-T32/opensource/drivers/isp-PRJ007/tx-isp-PRJ007
在这里插入图片描述
在这里插入图片描述
编译后就拷贝到内核:
在这里插入图片描述

4、生成固件:

rm -rf out/
./build/zeratul/build_camera_all.sh

5、启动信息:

烧写生成的固件后,通过打印信息可以看到找到了SC200AI (zeratul编译debug模式可以看到调试信息)
在这里插入图片描述
在这里插入图片描述

二、编译和运行程序:

1、修改配置:

修改SDK的demo程序,sample_comm.h,注意配置正确的sensor参数:
在这里插入图片描述
在这里插入图片描述
在sample目录,make -j 编译出来全部的应用程序。

2、运行例子:

修改配置后,编译出来测试程序,运行方法:
./sample-Atlas-Encoder-video --seconds=1 --counts=100 --enc_chn=1 --ivdc -v -t 1
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

程序运行期间,可以查看外设电源的供电情况,受电源控制的外设休眠期间都是断电的。sensor受PWND脚控制,进入休眠状态。以上手段的结合降低了系统的功耗,使电池的放电得以减缓,从而起到省电的目的。

总结

以上就是T32VN的AOV实例的编译和测试步骤,后续还会有进一步的介绍。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐