很多人问DM36x的SDK3.1如何接入sensor AR0130,sensor AR0130在低照度方面还是不错的,明显优于MT9P031, MT9M034的,当然是在720P这个等级。因为在SDK3.1中,是没有AR0130的驱动的,所以要重新添加。
这里以DM368为CPU, 其实和DM365一样。 AR0130是1.2M的sensor,用作720P, 一般是接入到DM365,由于DM368支持1080P,所以用DM368接入AR0130有点浪费。
想详细了解接入的过程,可以先看看 “AVServer_DesignGuide_IPNC_DM36x.pdf” 这个文档,这个文档我已上传,在此文档的后部分有大概的介绍,如果你自己想写一个sensor的驱动,加载到DM36x里面,那可能还需要一定点知识深度和积累。
目的:
在SDK3.1中,添加构造sensor AR0130的驱动,使其能够显示出720P图像
步骤:
<1>在SDK3.1的文件夹 ipnc_rdkz 中,有 Rules.make 文件,这些文件夹和文件,对于做过Ti的IPNC的人来说,都是了解的,我就不详细说了。 在Rules.make中添加IMGS_ID 定义: IMGS_ID := IMGS_AR0130_1.2MP 同时将其他的sensor id 注释掉。
<2>在 ipnc_rdk/av_capture/framework/drv/usermod/src 文件夹中, 添加文件夹 imgs_AR0130_1.2MP,这个文件夹的名字,其实要和IMGS_ID的名称要一样,否则编译器是找不到相应sensor的驱动的。文件夹 imgs_AR0130_1.2MP 里的文件,我已经上传,自己去下载下来,放到这里就OK了
<3>在 ipnc_rdk/av_capture/framework/drv 文件夹中,修改文件 MAKEFILE.MK,添加
ifeq ($(IMGS_ID), IMGS_AR0130_1.2MP)
make -fMAKEFILE.MK -C$(USERMOD)/imgs_AR0130_1.2MP MODULE=drv $(MAKE_TARGET)
endif
这个是编译规则。
<4>在ipnc_rdk/av_capture/framework 文件夹中,修改文件MAKEFILE.MK,添加
ifeq ($(IMGS_ID), IMGS_AR0130_1.2MP)
make -fMAKEFILE.MK -C./alg/src/aewb_ti/imgs_AR0130_1.2MP MODULE=alg $(MAKE_TARGET)
endif
这个是编译规则的AEWB路径等
到这里,修改的地方就完成了,再 make sysall,全部通过就OK了,烧写相应的 内核和文件系统,最好用NFS
注意的地方:
烧写相应的 内核和文件系统后,看DM36x的串口打印信息,如果出现 I2C (IIC)的地址不对,那你就要查看,AR0130的 PCB 硬件I2C地址,默认AR0130管脚 SADDR 是下拉的,自己留意下。