# hi3516ev300_camera **Repository Path**: gbanana/hi3516ev300_camera ## Basic Information - **Project Name**: hi3516ev300_camera - **Description**: hi3516ev300+imx335摄像头 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 3 - **Created**: 2025-07-10 - **Last Updated**: 2025-07-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 准备工作 SDK 海思Hi3516EV200R001C01SPC012 (我没有、不知道、别找我) 对应的交叉编译工具链 arm-himix100-linux (我没有、不知道、别找我) 按照其中的说明安装交叉编译工具链、解压源码等 # 目录说明 hisi_sdk 为海思官方sdk文件 请自行拷贝以下文件 Hi3516EV200R001C01SPC012.rar -> Hi3516EV200R001C01SPC012\01.software\board\Hi3516EV200_SDK_V1.0.1.2.tgz -> Hi3516EV200_SDK_V1.0.1.2\package\mpp.tgz -> mpp\ 这个目录下的 include, ko, lib 三个目录 hisi_sample 为海思官方例程 请自行拷贝以下文件 Hi3516EV200R001C01SPC012.rar -> Hi3516EV200R001C01SPC012\01.software\board\Hi3516EV200_SDK_V1.0.1.2.tgz -> Hi3516EV200_SDK_V1.0.1.2\package\mpp.tgz -> mpp\sample\ # 编译说明 安装海思交叉编译工具链并在 CMakeLists.txt 进行设置 ``` mkdir ./build cd ./build cmake ../ make ``` # 烧写方法 img目录下为我编译好的镜像 spi_nor_flash_16mb.bin 为 16MB spi nor flash 的合并镜像,可以一次性完整烧写 u-boot-hi3516ev300.bin、kernel.bin、rootfs_uclibc_64k.jffs2 为独立镜像,须按地址独立烧写 独立镜像烧写地址 |文件名|地址| |--|--| |u-boot-hi3516ev300.bin|0x00000000| |kernel.bin|0x00100000| |rootfs_uclibc_64k.jffs2|0x00500000| 0-0x100000用于存放uboot和uboot环境变量 kernel和rootfs的烧写地址可以在0x100000以后灵活调整,如果修改了烧写地址,uboot的bootargs记得做相应修改 烧写方法灵活多样,flash内有uboot的可以直接用uboot命令烧写,没有uboot的(如不小心全片擦除、全新flash、flash内数据损坏等)flash可以用sdk内的烧写工具或拆下flash用烧写器进行烧写。无论哪种方法请自行百度或查阅sdk内相关文档,这里不再赘述。 # 如何运行 烧写完成后需设置uboot环境变量 输入以下命令设置环境变量,保存并重启,正常情况都会成功 ``` setenv bootargs 'mem=64M console=ttyAMA0,115200 clk_ignore_unused rw root=/dev/mtdblock2 rootfstype=jffs2 mtdparts=hi_sfc:1M(u-boot.bin),4M(kernel),8M(rootfs.jffs2)' setenv bootcmd 'sf probe 0; sf read 40000000 100000 400000; bootm 40000000' saveenv reset ``` 输入以下命令启动网卡、设置IP、网关等 ``` ifconfig lo 127.0.0.1 ifconfig eth0 192.168.1.2 netmask 255.255.255.0 route add default gw 192.168.1.1 ``` 安装nfs server,在开发板上挂载nfs(土豪可以用NAS之类的,普通人用linux虚拟机) ``` mount -t nfs -o nolock 192.168.1.3:/home/nfs /tmp/nfs ``` 在nfs server的目录内准备上文提到的ko、lib目录,以及要运行的程序,输入以下命令加载ko ``` cd /tmp/nfs/ko ./load3516ev300 -i -sensor0 imx335 ``` load3516ev300 脚本中的内存可以自行修改,但必须和bootargs的mem保持一致 输入以下命令设置环境变量 ``` export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/tmp/nfs/lib ``` 运行你的程序 懒人做法:上述必要的操作写在启动脚本里,lib和ko放在jffs文件系统内,一劳永逸