hi3516c方案和hi3516的区别

服务器维护中.......
我们会尽快恢复,请稍后再试,谢谢!mpp 海思的hi3516SDK里面的sample,对于开发网络摄像头以及 相关的模组很有参考 SCM 单片机
238万源代码下载-
&文件名称: mpp
& & & & &&]
&&所属分类:
&&开发工具: C++
&&文件大小: 5266 KB
&&上传时间:
&&下载次数: 14
&&提 供 者:
&详细说明:海思的hi3516SDK里面的sample,对于开发网络摄像头以及网络摄像头相关的模组很有参考价值。海思是和安霸和ti三大巨头的摄像头模组厂商。-Hass hi3516SDK inside the sample, as well as for the development of webcam webcam-related modules of great reference value. Hass is Ambarella and camera module and ti Big Three manufacturers.
文件列表(点击判断是否您需要的文件,如果是垃圾请在下面评价投诉):
&&mpp&&...\component&&...\.........\isp&&...\.........\...\doc&&...\.........\...\...\Sensor_Support_List.xlsx&&...\.........\...\sensor&&...\.........\...\......\aptina_9m034&&...\.........\...\......\............\m034_cmos.c&&...\.........\...\......\............\m034_sensor_config.h&&...\.........\...\......\............\m034_sensor_ctl.c&&...\.........\...\......\............\Makefile&&...\.........\...\......\aptina_ar0130&&...\.........\...\......\.............\ar0130_cmos.c&&...\.........\...\......\.............\ar0130_sensor_ctl.c&&...\.........\...\......\.............\Makefile&&...\.........\...\......\Makefile&&...\.........\...\......\ov_9712&&...\.........\...\......\.......\Makefile&&...\.........\...\......\.......\ov9712_cmos.c&&...\.........\...\......\.......\ov9712_sensor_ctl.c&&...\.........\...\......\pana34031&&...\.........\...\......\.........\Makefile&&...\.........\...\......\.........\pana34031_cmos.c&&...\.........\...\......\.........\pana34031_sensor_ctl.c&&...\.........\...\......\pana34041&&...\.........\...\......\.........\Makefile&&...\.........\...\......\.........\pana34041_cmos.c&&...\.........\...\......\.........\pana34041_sensor_ctl.c&&...\.........\...\......\sony_icx692&&...\.........\...\......\...........\icx692_cmos.c&&...\.........\...\......\...........\icx692_sensor_ctl.c&&...\.........\...\......\...........\Makefile&&...\.........\...\......\sony_imx104&&...\.........\...\......\...........\imx104_cmos.c&&...\.........\...\......\...........\imx104_sensor_ctl.c&&...\.........\...\......\...........\Makefile&&...\.........\...\......\...........\obj&&...\.........\...\......\...........\...\imx104_cmos.o&&...\.........\...\......\...........\...\imx104_sensor_ctl.o&&...\.........\...\......\sony_imx122&&...\.........\...\......\...........\imx122_cmos.c&&...\.........\...\......\...........\imx122_sensor_ctl.c&&...\.........\...\......\...........\Makefile&&...\extdrv&&...\......\gpio-i2c&&...\......\gpio-i2c-ex&&...\......\...........\gpioi2c_ex.c&&...\......\...........\gpioi2c_ex.h&&...\......\...........\gpioi2c_ex.ko&&...\......\...........\gpioi2c_ex.mod.c&&...\......\...........\gpioi2c_ex.mod.o&&...\......\...........\gpioi2c_ex.o&&...\......\...........\i2c_read_ex&&...\......\...........\i2c_read_ex.c&&...\......\...........\i2c_write_ex&&...\......\...........\i2c_write_ex.c&&...\......\...........\Makefile&&...\......\...........\Module.symvers&&...\......\...........\modules.order&&...\......\...........\strfunc.c&&...\......\...........\strfunc.h&&...\......\........\gpioi2c.ko&&...\......\........\gpioi2c.mod.c&&...\......\........\gpioi2c.mod.o&&...\......\........\gpioi2c.o&&...\......\........\gpio_i2c.c&&...\......\........\gpio_i2c.h&&...\......\........\gpio_i2c.o&&...\......\........\i2c_read&&...\......\........\i2c_read.c&&...\......\........\i2c_write&&...\......\........\i2c_write.c&&...\......\........\Makefile&&...\......\........\Module.symvers&&...\......\........\modules.order&&...\......\........\strfunc.c&&...\......\........\strfunc.h&&...\......\hi_i2c&&...\......\......\hii2c.c&&...\......\......\hii2c.o&&...\......\......\hi_i2c.h&&...\......\......\hi_i2c.ko&&...\......\......\hi_i2c.mod.c&&...\......\......\hi_i2c.mod.o&&...\......\......\hi_i2c.o&&...\......\......\i2c_read&&...\......\......\i2c_read.c&&...\......\......\i2c_write&&...\......\......\i2c_write.c&&...\......\......\Makefile&&...\......\......\Module.symvers&&...\......\......\modules.order&&...\......\......\strfunc.c&&...\......\......\strfunc.h&&...\......\Makefile&&...\......\pwm&&...\......\...\Makefile&&...\......\...\pwm.c&&...\......\...\pwm.h&&...\......\...\pwm.ko
&近期下载过的用户:
&输入关键字,在本站238万海量源码库中尽情搜索:
&[] - 模拟迅雷下载程序 ,可以适合初学者可以适合初学者
&[] - zlib-1.2.3.tar是新的zlib库藏 用于压缩 等等
&[] - 海思HI3516高清IPCAM设计原理图,可实现1080P30帧。性能优越
&[] - ar0130 sensor 960p 驱动
&[] - RTSP 协议
通过v4l2获取码流通过RTSP协议发送。
这个是live555一部分。
&[] - SONY公司最新推出的EFFIO-P全套资料,有原理图,芯片规格书,以及程序。其内置八国语言。。。。
&[] - 介绍海思的Hi3511 SDK包的使用及例程可供大家开发IP类摄像头使用
&[] - SONY 摄像机原理图,可供维修及设计参考
&[] - 华为海思半导体推出的一款基于ARM9处理器Hi3515的技术文档
&[] - panasonic_34041 松下图像传感器,可用于安防监控行业Hi3516&SDK&安装以及升级使用说明
第一章 Hi3516_SDK_V1.x.x.x版本升级操作说明
&& 如果您是首次安装本SDK,请直接参看第2章。
第二章 首次安装SDK
1、Hi3516 SDK包位置
在"Hi1C01/01.software/board"目录下,您可以看到一个
Hi3516_SDK_V1.x.x.x.tgz 的文件,
该文件就是Hi3516的软件开发包。
2、解压缩SDK包
在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar -zxf
Hi3516_SDK_V1.x.x.x.tgz ,
解压缩该文件,可以得到一个Hi3516_SDK_V1.x.x.x目录。
3、在linux服务器上安装交叉编译器
进入tools/toolchains目录,运行chmod +x
cross.install,然后运行./cross.install即可,注意,需要有sudo权限或者root权限。
&&& 3) 执行source
/etc/profile, 安装交叉编译器的脚本配置的环境变量就可以生效了,或者请重新登陆也可。
4、展开SDK包内容
返回Hi3516_SDK_V1.x.x.x目录,运行./sdk.unpack将会展开SDK包打包压缩存放的内容,请按照提示完成操作。
如果您需要通过WINDOWS操作系统中转拷贝SDK包,请先运行./sdk.cleanup,收起SDK包的内容,拷贝到新的目录后再展开。
5、SDK目录介绍
Hi3516_SDK_V1.x.x.x
目录结构如下:&&&
sdk.cleanup&&&&&&&&&&&&&&&&
# SDK清理脚本
sdk.unpack&&&&&&&&&&&&&&&&&
# SDK展开脚本
osdrv&&&&&&&&&&&&&&&&&&&&&&
# 存放操作系统及相关驱动的目录
linux-2.6.35&&&&&&&&&&&
# linux内核源代码
u-boot-2010.06&&&&&&&&&
# uboot源代码
rootfs&&&&&&&&&&&&&&&&&
# 根文件系统
package&&&&&&&&&&&&&&&&&&&&
# 存放SDK各种压缩包的目录
linux-2.6.35.tgz&&&&&&&
# linux内核源码压缩包
rootbox.tgz&&&&&&&&&&&&
# 根文件系统压缩包
u-boot-2010.06.tgz&&&&&
uboot源码及工具压缩包&&&
busybox-1.16.1.tgz&&&&
# busybox源码压缩包
mpp.tgz&&&&&&&&&&&&&&&&
# 媒体处理平台软件压缩包
images&&&&&&&&&&&&&&&&&
# 可供FLASH烧写的映像文件,如内核、根文件系统
tools&&&&&&&&&&&&&&&&&&&&&&
# 存放公共类工具的目录
bin&&&&&&&&&&&&&&&&&&&&
# 存放可执行程序的目录,如mkfs.cramfs
src&&&&&&&&&&&&&&&&&&&&
# 存放工具源代码的目录,如mkfs.cramfs
toolchain&&&&&
&# 存放交叉工具链的目录
scripts&&&&&&&&&&&&&&&&&&&&
# 存放shell脚本的目录
mpp&&&&&&&&&&&&&&&&&&&&&&&&
# 存放媒体处理平台的目录
component&&&&&&&&&&&&&&
# 组件源代码
extdrv&&&&&&&&&&&&&&&&&
# 板级外围驱动源代码
include&&&&&&&&&&&&&&&&
# 对外头文件
ko&&&&&&&&&&&&&&&&&&&&&
# 内核模块
lib&&&&&&&&&&&&&&&&&&&&
# release版本库以及音频库
tools&&&&&&&&&&&&&&&&&&
# 媒体处理相关工具
sample&&&&&&&&&&&&&&&&&
# 样例源代码
第三章、安装、升级Hi3516DEMO板开发开发环境
如果您使用的Hi3516的DEMO板,可以按照以下步骤烧写u-boot,内核以及文件系统,以下步骤均使用网络来更新。
通常,您拿到的单板中已经有u-boot,如果没有的话,就需要使用仿真器进行烧写。
更详细的操作步骤及说明,请参见01.software\board\documents目录下的《Linux开发环境用户指南》。
以下操作假设您的单板上已经有u-boot,使用网口烧写uboot、kernel及rootfs到Flash中。
Hi3516支持SPI Flash和NAND Flash,请根据实际情况选择下列第3节或第4节的步骤进行操作;
Demo单板默认为从NAND Flahs启动,如果需要修改,请参照《Hi3516
Demo单板使用指南》将拨码开关SW6调整为0000。
1、配置tftp服务器
可以使用任意的tftp服务器,将package/images下的相关文件拷贝到tftp服务器目录下。
2、参数配置
单板上电后,敲任意键进入u-boot。设置serverip(即tftp服务器的ip)、ipaddr(单板ip)和ethaddr(单板的MAC地址)。
&&& setenv
serverip xx.xx.xx.xx
&&& setenv
ipaddr xx.xx.xx.xx
&&& setenv
ethaddr xx:xx:xx:xx:xx:xx
&&& setenv
netmask xx.xx.xx.xx
&&& setenv
gatewayip xx.xx.xx.xx
serverip,确保网络畅通。
3、烧写映像文件到SPI Flash
&&& 以16M SPI
Flash为例。
1)地址空间说明
5M(1+4)&|&&&&&&&&&&
11M&&&&&&&&&&&&&&&&&&&
|---------------|----------------------------------|
| boot/kernel&&
|&&&&&&&&&&
rootfs&&&&&&&&&&&&&&&&
以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。
2)烧写u-boot
sf probe 0
u-boot.bin&# 如果是Hi3517 Ref板,请使用
u-boot-250M.bin
sf probe 0
sf erase 0 100000
&&& 3)烧写内核
sf probe 0
kernel-hi.img&&#
如果是Hi3517 Ref板,请使用 kernel-hi-nopcie.img
sf erase 000
sf write 000 400000
4)烧写文件系统
rootfs-hi-Flash-256k.jffs2&&#
如果是Hi3517 Ref板,请使用 rootfs-hi-Flash-64k.jffs2
sf erase 000
sf write 000 b00000
5)设置启动参数
setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock1
rootfstype=jffs2 mtdparts=hi_sfc:5M(boot),11M(rootfs)'
setenv bootcmd 'sf probe 0;sf read 0xx100000
0x400000;bootm 0x'
&&# 如果是Hi3517
Ref板,请使用下面的bootcmd
&&setenv bootcmd 'mw 0x200f014c
1; sf probe 0;sf read 0xxx400000;bootm
0x';setenv mdio_setenv phyaddr 1;sa
4、烧写映像文件到NAND Flash
1)地址空间说明
|&&&&&&&&&&
32M&&&&&&&&&&&&&&&&&&&
|---------------|----------------------------------|---------
| boot/kernel&&
|&&&&&&&&&&
rootfs&&&&&&&&&&&&&&&&
以下的操作均基于图示的地址空间分配,您也可以根据实际情况进行调整。
2)烧写u-boot&&&&&&&
u-boot.bin
nand erase 0 100000
nand write
3)烧写内核和文件系统
kernel-hi.img
nand erase 000
nand write 000 500000
ff 2000000&
rootfs-hi-Flash.yaffs2
nand erase 0000
nand write.yaffs 0000
#注意:95c1c0为rootf文件实际大小(16进制)
4)设置启动参数
setenv bootargs 'mem=64M console=ttyAMA0,115200 root=/dev/mtdblock2
rootfstype=yaffs2
mtdparts=hinand:16M(boot),32M(rootfs),32M(test)'
setenv bootcmd 'nand read 0xxx500000;bootm
5、启动新系统
reset&# 重启进入新系统。
第四章、开发前环境准备
1、Sensor准备
Demo板可以插接多种Sensor,请注意Demo板上的拨码开关选择,详情请参见《Hi3516 Demo单板使用指南》,。
mpp/ko目录下的load3516脚本区分不同sensor类型,如果与实际情况不符,请手动修改其中的SNS_A变量;如果是双sensor场景(使用VI端口B),请将其中的USE_SNS_B变量修改为1。
mpp/lib目录下包含多种不同的sensor库,软件开发时请根据实际情况链接正确的库文件;编译mpp/sample下的文件时,请注意修改sample目录下Makefile.param文件中的SENSOR_TYPE。
2、管脚复用
与媒体业务相关的管脚复用都在mpp/ko目录下pinmux_hi3516.sh脚本中配置,如果与实际情况不符请直接修改,此脚本被load3516调用,在加载mpp内核模块之前被执行;
mpp之外的其他管脚复用统一在uboot中配置,详细说明请参见《U-boot移植应用开发指南》。
第五章、使用SDK和DEMO板进行开发
1、开启Linux下的网络
&&& # 设置网络
&&& ifconfig
eth0 hw ether xx:xx:xx:xx:xx:
&&& ifconfig
eth0 xx.xx.xx.xx netmask xx.xx.xx.
&&& route add
default gw xx.xx.xx.xx
然后ping一下其他机器,如无意外,网络将能正常工作。
2、使用NFS文件系统进行开发
在开发阶段,推荐使用NFS作为开发环境,可以省去重新制作和烧写根文件系统的工作。
挂载NFS文件系统的操作命令:
&&& mount -t nfs
-o nolock -o tcp xx.xx.xx.xx:/your-nfs-path /mnt
然后就可以在/mnt目录下访问服务器上的文件,并进行开发工作。
3、开启telnet服务
&&& # 网络正常后,运行命令
telnetd& 就可以启动单板telnet服务,然后才能使用telnet登录到单板。
4、运行MPP业务
在单板linux系统下,进入mpp ko目录,加载KO
&&& ./load3516
-i 'sensor'&&#
sensor对应具体的sensor型号,如Hi3517 Ref板使用: ./load3516 -i ar0331_60
进入各sample目录下执行相应样例程序(sample需要先在服务器上成功编译过)
mpp/sample/vio
&&& ./sample_vio
第六章 地址空间分配与使用
1、DDR内存管理说明
1)所有DDR内存中,一部分由操作系统管理,称为OS内存;另一部分由MMZ模块管理,供媒体业务单独使用,称为MMZ内存。
2)OS内存起始地址为0x,内存大小可通过bootargs进行配置,例如第三章中的setenv bootargs
'mem=64M ... ',表示分配给操作系统内存为64M,您可以根据实际情况进行调整。
3)MMZ内存由MMZ内核模块管理(mpp/ko目录下的mmz.ko),加载mmz模块时,通过模块参数指定其起始地址及大小,例如:
&&& insmod
mmz.ko mmz=anonymous,0,0xM anony=1
表示mmz区域的名称为anonymous,起始地址为0x,大小为176M。您可以通过修改mpp/ko目录下load3516脚本中的mmz模块参数,来修改其起始地址和总大小。
4)请注意MMZ内存地址范围不能与OS内存重叠。
2、DEMO板DDR内存管理示意
以容量为256MBytes的DDR内存为例,以下为根据本文档和SDK默认配置得到的内存管理示意图:
-----|-------|&
0x&& # Memory managed by
|&&&&&&&&&&&&&
-----|-------|&
0x&& # Memory managed by
&&& 176M |
-----|-------|&
0x8F000000&& # Not used.
-----|-------|&
0x8FFFFFFF&& # End of DDR.
&&& 注意:
&(1)用户在配置启动参数时需要设置OS的管理内存为64M,“setenv bootargs
'mem=64M ...”。&&
&(2)系统启动后,配置load3516的脚本中mmz的管理内存为176M,“insmod
mmz.ko mmz=anonymous,0,0xM
anony=1”。&&&
以容量为128MBytes的DDR内存为例,可以采用如下配置来节省内存使用。
-----|-------|&
0x&& # Memory managed by
|&&&&&&&&&&&&&
-----|-------|&
0x&& # Memory managed by
80M& | MMZ&&
-----|-------|&
0x87FFFFFF&& # End of
&&& 注意:
&(1)用户在配置启动参数时需要设置OS的管理内存为48M,“setenv bootargs
'mem=48M ...”。&&
&(2)系统启动后,配置load3516的脚本中mmz的管理内存为80M,“insmod
mmz.ko mmz=anonymous,0,0xM anony=1”。
高清 SDI/HDMI/VGA 编解码器 软件硬件设计
DVR/NVR/IPC 硬件定制 软件设计整体解决方案提供
联系电话 :
QQ : 401120
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 hi3516 hi3518 区别 的文章

 

随机推荐