Hi3518EV300 环境搭建 (LiteOS)

Hi3518EV300 环境搭建 (LiteOS) thatk 2023-11-08 18:12:13 1077

Hi3518EV300 作为新一代消费类 Camera SOC,集成新一代 ISP 以及业界最新的 H265 视频压缩编码器,在低码率、高画质等方面领先业界。集成 POR、RTC、Audio Codec,为客户极大降低 ebom 成本。

本文主要是介绍在第一次拿到 Hi3518EV300 这颗 SOC 时需要做的准备活动,以及如何搭建环境,烧写镜像,配置虚拟网口等基本操作,由于 Hi3518EV300 支持 Linux 和 LiteOS 两个系统,本文介绍的是搭建 LiteOS 系统的基本操作,关于搭建 Linux 系统的会在后面做介绍。

一、环境搭建准备

环境搭建部分主要分为 4 步,主要是软件包安装、交叉编译工具链安装、组件安装和 ffmpeg 工具安装。

1.1 软件包安装

  • 配置默认使用 bash
sudo dpkg-reconfigure dash

配置为 no , 选项如下:

易百纳社区

  • 安装软件包
sudo apt-get install make libc6 lib32z1 lib32stdc++6 zlib1g-dev libncurses5-dev ncurses-term libncursesw5-dev g++ u-boot-tools texinfo texlive gawk curl upx pngquant
  • 创建 /etc/ld.so.preload 文件
执行 echo “” > /etc/ld.so.preload

解决 64bit linux server 上某些第三方库编译失败的问题

1.2 交叉编译工具链安装

  • 解压工具链
tar -xzf arm-himix100-linux.tgz
  • 安装工具链
sudo chmod +x arm-himix100-linux.install
sudo ./arm-himix100-linux.install
export PATH=/opt/hisi-linux/x86-arm/arm-himix100-linux/target/bin:$PATH

1.3 安装 mtd-utils 工具依赖的组件

  • 安装依赖库

sudo apt-get install zlib1g-dev liblzo2-dev uuid-dev pkg-config

设置 pkg-config 路径

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/lib/x86_64-linux-gnu/
pkgconfig

安装 automake1.15.1


sudo apt-get autoremove automake
wget ftp://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.gz
tar -xzf automake-1.15.1.tar.gz
cd automake-1.15.1/
./configure
make & make install

1.4 安装 ffmpeg 工具

下载对应版本的 ffmpeg 工具,下载地址:

https://johnvansickle.com/ffmpeg/

解压压缩包

tar -xf ffmpeg-git-64bit-static.tar.xz

将工具放入服务器用户目录

sudo cp ffmpeg-3.3.4-64bit-static/ffmpeg /usr/bin
sudo chmod +x /usr/bin/ffmpeg

易百纳社区

二、安装 SDK

2.1 解压 SDK


tar -xzf Hi3518EV300_MobileCam_SDK_V1.0.1.1.tgz

2.2 从第三方网络获取工具源码

  • mtd-utils 软件包准备,下载地址:

https://src.fedoraproject.org/repo/pkgs/mtd-utils/mtd-utils-2.0.2.tar.bz2/sha512/5e8e8159a0aef719193e4248b3ed22aa37bacc26e8fa0cceb7501b0bf05881f5fa1c87599a6fd78a677fe168df3fbae14fa6f3ccaae7c25dbe3c892db243d9a4/mtd-utils-2.0.2.tar.bz2

将下载下来的软件包存放在 osdrv/tools/pc/jffs2_tool/ 目录下。

  • zlib 软件包准备,下载地址:

https://sourceforge.net/projects/libpng/files/zlib/1.2.11/zlib-1.2.11.tar.gz/download

将下载下来的软件包存放在 osdrv/tools/pc/zlib/ 目录下。

  • gzip 软件包准备,下载地址:

http://ftp.gnu.org/gnu/gzip/gzip-1.8.tar.gz

将下载下来的软件包存放在 osdrv/tools/pc/hi_gzip/ 目录下。

  • lzo 软件包准备,下载地址:

http://www.oberhumer.com/opensource/lzo/download/lzo-2.09.tar.gz

将下载下来的软件包存放在 osdrv/tools/pc/jffs2_tool/ 目录下。

  • yaffs2utils 软件包准备,下载地址:

https://codeload.github.com/dorigom/yaffs2utils/tar.gz/0.2.9

将下载下来的软件包存放在 osdrv/tools/pc/mkyaffs2image/ 目录下。

  • ffmpeg 软件包准备,下载地址:

http://ffmpeg.org/releases/ffmpeg-3.4.1.tar.gz

将下载下来的软件包存放在 middleware/thirdparty/ffmpeg/ 目录下。

  • tiff 软件包准备,下载地址:
http://download.osgeo.org/libtiff/tiff-4.0.9.tar.gz

将下载下来的软件包存放在 middleware/thirdparty/tiff/ 目录下。

  • rapidjson 软件包准备,下载地址:

https://codeload.github.com/Tencent/rapidjson/tar.gz/v1.1.0

将下载下来的软件包存放在 middleware/thirdparty/rapidjson/ 目录下。

  • xmp-toolkit-sdk 软件包准备,下载地址:
http://download.macromedia.com/pub/developer/xmp/sdk/XMP-Toolkit-SDK-CC201607.zip

将下载下来的软件包存放在 middleware/thirdparty/xmp-toolkit-sdk/ 目录下。

  • expat 软件包准备,下载地址:
https://nchc.dl.sourceforge.net/project/expat/expat/2.1.0/expat-2.1.0.tar.gz

将下载下来的软件包存放在 middleware/thirdparty/xmp-toolkit-sdk/ 目录下。

  • freetype 软件包准备,下载地址:

https://bigsearcher.com/mirrors/nongnu/freetype/freetype-2.9.1.tar.gz

将下载下来的软件包存放在 middleware/thirdparty/freetype/ 目录下。

  • thttpd 软件包准备,下载地址:

http://www.acme.com/software/thttpd/thttpd-2.29.tar.gz

将下载下来的软件包存放在 middleware/thirdparty/thttpd/ 目录下。

  • iniparser 软件包准备,下载地址:
http://download.macromedia.com/pub/developer/xmp/sdk/XMP-Toolkit-SDK-CC201607.zip

将下载下来的软件包存放在 middleware/thirdparty/iniparser/ 目录下。

2.3 编译 SDK

  • 选择对应 config 文件:

cp configs/hi3518ev300_dashcam_demb_gc2053car_nonescreen_64M_config .config

编译整个 SDK


make all

获取镜像文件

在 /reference/out/hi3518ev300_dashcam_nonescreen_demb_gc2053car/burn/spinor 目录下会生成可烧录的镜像文件

易百纳社区

三、SDK 镜像烧写

在海思 Hi3518EV300 的平台上,SDK 镜像烧写都是建立在 PC 端的 Hitool 工具上的,这里介绍烧写的三种方式:串口、USB、SD卡。

3.1 串口烧写 u-boot

  • 在 Hitool 中导入生成镜像中的 usb-burn.xml 配置表

易百纳社区

易百纳社区

  • 烧写 u-boot
    选择与板端连接的串口,并且只选择 u-boot 进行烧录,传输方式选择串口,如下:

易百纳社区

易百纳社区

烧写完成会出现下面的提示窗口:

易百纳社区

如果进度条没有增加,可以根据控制台的提示重新上电便可以了。

  • 串口打印 log

在 Hitool 中可以打开串口终端显示,显示如下:

易百纳社区

可以正常进入 u-boot 控制台,证明 u-boot 烧写成功。

3.2 USB 烧写镜像

  • ① 将所有选项全选,并将传输方式修改为 USB,如下:

易百纳社区

  • ② 上电前长按 UPDATE_MODE 按键,然后点击烧录,如果进度条没有变化,则按一下 PWR_BUTTON  按键即可

易百纳社区

烧写完成之后会出现下面窗口:

易百纳社区

  • ③ 设置 bootcmd 和 bootargs
    烧写完成之后还是会进入 u-boot 控制台,这是因为没有配置 bootcmd,导致 u-boot 无法正常找到 Image 的镜像,具体配置可以参考服务器端生成的 config 文件中的配置

易百纳社区

因而,在 u-boot 控制台中输入下面配置,可以实现对 bootcmd 和 bootargs 的配置:


setenv bootargs 'mem=0M quiet console=ttyAMA0,115200 clk_ignore_unused rw root=/dev/spinorblk0 rootfstype=jffs2 mtdparts=hi_sfc:512K(u-boot.bin),256K(reserved),
64K(rawparam),64K(rawparambak),4608K(main_app_zip.bin),512K(resImage_zip),2176K(appfs.jffs2)'

setenv bootcmd 'sf probe 0;sf read 0x43000000 0x560000 0x80000;ugzip 0x43000000 0x41f40000;sf read 0x40000000 0xC0000 0x10000;sf read 0x40100000 0xD0000 0x10000;cread 0x40000000 0x40100000 0x10000 0x41f00000;sf read 0x43000000 0xE0000 0x480000;ugzip 0x43000000 0x40000000;go 0x40000000'

具体配置如下:

易百纳社区

最后通过 saveenv 保存配置,然后直接通过 boot 便可以将整个 LiteOS 系统正常跑起来。

易百纳社区

3.3 SD 卡烧写镜像

SD 卡可以进行裸烧(单板上没有 u-boot)和非裸烧(单板上还未烧写 u-boot)两种方式,

首先,需要准备一张 FAT32 格式的 SD 卡,并且需要配置 u-boot 中的配置,使其支持 SD 卡升级和烧写。

在 osdrv/opensource/uboot/u-boot-2016.11/include/configs/hi3518ev300.h 中打开宏定义,如下:

易百纳社区

  • ① 将所需文件存放到 SD 卡中

易百纳社区

将上图圈出来的文件放到准备的 SD 卡中

(注意:使用裸烧方式烧录 u-boot 必须以 u-boot.bin 命名,而且 bootargs 里面的名称必须对应相应的镜像文件)

  • ② 插入 SD 卡,上电前长按 UPDATE_MODE 按键,上电后,如果没有反应的话按一下 PWR_BUTTON 即可。( 裸烧 )

易百纳社区

  • 在串口端查看 log

易百纳社区

不需要像 USB 烧录方式去配置 bootcmd 和 bootargs , SD 卡烧写会自动完成这个动作。

  • SD 卡非裸烧

SD 卡非裸烧和裸烧方式操作都是一样的,具体操作参考 SD 卡裸烧的流程便可。

四、配置虚拟网口

由于在 Hi3518EV300 的 DMEB 开发板上并没有网口,只存在一个 USB 接口,所以需要将其配置为虚拟网口以方便后面的使用。

4.1 USB Device 网口操作(WIN10)

  • 在 u-boot 中键入 usb device

易百纳社区

然后电脑端会识别到一个设备,但是不可用

易百纳社区


  • ② 右键选择更新设备驱动,将路径指向 SDK 包中提供的 01.software/pc/usb_tools/win10,如果出现无法安装的情况,可以参考下面的操作方式。
    易百纳社区

通过 zadig 工具(网上下载)安装 HiUSBBurn 所需的驱动,操作方式如下:

<1> 打开 zadig 工具

易百纳社区

可以识别到 HiUSBBurn,而且 Driver 是 none。右边的 Driver 选项选择为 WinUSB。

<2> 点击 Install Driver

易百纳社区

出现上面窗口代表着安装驱动完成。

  • 更新完成设备显示如下:

易百纳社区

  • 进入 LIteOS 中键入 usb 4。

易百纳社区

  • 在 Windows 端会新出现一个以太网节点

易百纳社区

  • 修改 Windows 端网络节点的 ip 和网关,与板端保持在同一个网段内。

易百纳社区

  • 修改完成之后,PC 和板端都可以互相 ping 通。

板端:

易百纳社区

PC 端:

易百纳社区

上面的操作需要关闭 PC 端防火墙,否则可能会出现 ping 不通的情况。

4.2 PC 桥接操作

  • PC 端连接上 Intelnet,单板也开启网络。

易百纳社区

  • 建立桥接。

易百纳社区

桥接完成之后会生成一个网桥,查看网桥信息如下:

易百纳社区

  • 配置单板 ip。

易百纳社区

  • 尝试 ping 通网络

板端 ping Linux 端和 PC 端:

易百纳社区

Linux 端 ping 板端:

易百纳社区

PC 端 ping 板端:

易百纳社区

那么,到这里,关于 Hi3518EV300 的环境搭建 (LiteOS) 部分已经完成了,后续我们也会持续为大家导入关于 Hi3518EV300 搭建 Linux 系统的基础操作部分。

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
thatk
红包 1 收藏 评论 打赏
评论
0个
内容存在敏感词
手气红包
    易百纳技术社区暂无数据
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
thatk
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区