Hi3516CV610 SDK 安装及升级

Hi3516CV610 SDK 安装及升级 Keith_Cheung 2024-03-17 14:03:00 4306

文章目录

本文为Hi3516CV610 SDK的安装及升级使用说明,方便使用者能快速在对应芯片的DEMB板上搭建好SDK运行环境。

1.首次安装 SDK

Hi3516CV610 SDK 包位置在”Hi3516CV610R001*/01.software/board”目录下,您可以看到一个Hi3516CV610_SDK_Vx.x.x.x.tgz 的文件,该文件就是Hi3516CV610的软件开发包。

1.1 解压缩 SDK 包

在linux服务器上(或者一台装有linux的PC上,主流的linux发行版本均可以),使用命令:tar -zxf Hi3516CV610_SDK_Vx.x.x.x.tgz,解压缩该文件,可以得到一个Hi3516CV610_SDK_Vx.x.x.x目录。

1.2 展开 SDK 包内容

返回Hi3516CV610_SDK_Vx.x.x.x目录,运行./sdk.unpack(请用root或sudo权限执行)将会展开SDK包打包压缩存放的内容,请按照提示完成操作。
如果您需要通过WINDOWS操作系统中转拷贝SDK包,请先运行./sdk.cleanup,收起SDK包的内容,拷贝到新的目录后再展开。

1.3 在 linux 服务器上搭建开发环境

参考《Hi35xxVxxx 开发环境用户指南》

1.4 编译 BSP

在 smp/a7_linux/source/bsp 目录下执行 make 命令整编小系统镜像:
make all
默认编译参数为:make LIB_TYPE=musl CHIP=hi3516cv610 DEBUG=0 all

编译参数说明:

  1. BOOT_MEDIA默认选择spi启动方式编译,可选择emmc启动方式编译,即BOOT_MEDIA=emmc;
  2. LIB_TYPE默认为musl编译,可选择glibc编译,即LIB_TYPE=glibc;
  3. CHIP默认为hi3516cv610,可选择hi3516cv610编译,即CHIP=hi3516cv610;
  4. DEBUG默认为DEBUG=0,表示编译 release 版本系统镜像。可选择为DEBUG=1,即编译debug版本系统镜像。

2.安装、升级 Hi3516CV610 DEMO 板开发环境

由于常用的烧写协议如 tftp 和串口都是不安全的协议,在 release 版本 boot配置环境中默认不支持烧写(包括 burntool 烧写),因此本小结是以debug 环境为基础进行操作描述。
如需烧写release 版本镜像调试,可选择在 debug 版本的 u-boot 命令行中进行操作,具体步骤如下:
第一步:烧写 debug 版本的 boot 镜像,并启动到 u-boot 命令行中;
第二步:执行下述操作烧写 release 版本镜像文件。

如果您使用的Hi3516CV610的DEMO板,可以按照以下操作烧写uboot、内核以及文件系统,以下操作均使用网络来更新:

  • 如果您拿到的单板没有uboot的话,就需要使用01.software/pc/ToolPlatform进行烧写。更详细的烧写操作步骤及说明
  • 如果您拿到的单板中已经有uboot,可以按照以下步骤使用网口烧写uboot、kernel及rootfs到Flash中。DEMO板默认为从SPI Flash启动。

2.1 配置 tftp 服务器

可以使用任意的tftp服务器,先编译好uboot、kernel和rootfs。将编译好的相关文件拷贝到tftp服务器目录下。

2.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
ping serverip (确保网络畅通)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

2.3 烧写镜像文件到 SPI Nor Flash

以32MB SPI Nor Flash为例。
地址空间说明

以下的操作均基于上表的地址空间分配,可以根据实际情况进行调整;也可以通过ToolPlatform 工具选择版本包 bsp 目录整编生成的 bsp/pub/
Hi3516CV610_image_musl/nor_burn_2.4table.xml 分区表文件自动填充分区,按xml文件配置的分区直接进行烧写。

步骤1 烧写u-boot

mw.b 0x41000000 0xFF 0x80000
tftp 0x41000000 boot_image.bin
sf probe 0
sf erase 0x0 0x80000
sf write
  • 1
  • 2
  • 3
  • 4
  • 5

步骤2 烧写环境变量

mw.b 0x41000000 0xFF 0x80000
tftp 0x41000000 nor_env.bin
sf probe 0
sf erase 0x80000 0x80000
sf write 0x41000000 0x80000 0x80000
  • 1
  • 2
  • 3
  • 4
  • 5

步骤3 烧写kernel

mw.b 0x41000000 0xFF 0x400000
tftp 0x41000000 uImage
sf probe 0
sf erase 0x100000 0x400000
sf write 0x41000000 0x100000 0x400000
  • 1
  • 2
  • 3
  • 4
  • 5

步骤4 烧写文件系统

mw.b 0x41000000 0xFF 0xa00000
tftp 0x41000000 rootfs_hi3516cv610_64k.jffs2
sf probe 0
sf erase 0x500000 0xa00000
sf write 0x41000000 0x500000 0xa00000
  • 1
  • 2
  • 3
  • 4
  • 5

2.4 烧写镜像文件到 SPI NAND Flash

以64MB SPI NAND Flash为例。
地址空间说明

以下的操作均基于上表的地址空间分配,可以根据实际情况进行调整;也可以通过ToolPlatform 工具选择版本包 bsp 目录整编生成的 bsp/pub/
Hi3516CV610_image_musl/nand_burn_table.xml 分区表文件自动填充分区,按xml文件配置的分区直接进行烧写。

步骤1 烧写u-boot

mw.b 0x41000000 0xFF 0x80000
tftp 0x41000000 boot_image.bin
nand erase 0x0 0x80000
nand write 0x41000000 0x0 0x80000
reset
  • 1
  • 2
  • 3
  • 4
  • 5

步骤2 烧写环境变量

mw.b 0x41000000 0xFF 0x80000
tftp 0x41000000 nor_env.bin
nand erase 0x80000 0x80000
nand write 0x41000000 0x80000 0x80000
  • 1
  • 2
  • 3
  • 4

步骤3 烧写kernel

mw.b 0x41000000 0xFF 0x400000
tftp 0x41000000 uImage
nand erase 0x100000 0x400000
nand write 0x41000000 0x100000 0x400000
  • 1
  • 2
  • 3
  • 4

步骤4 烧写文件系统

mw.b 0x41000000 0xFF 0x2000000
tftp 0x41000000 rootfs_hi3516cv610_2k_128k_32M.ubifs
nand erase 0x500000 0x2000000
nand write 0x41000000 0x500000 0x2000000
  • 1
  • 2
  • 3
  • 4

2.5 烧写镜像文件到 EMMC

地址空间说明

以下的操作均基于上表的地址空间分配,可以根据实际情况进行调整;也可以通过ToolPlatform 工具选择版本包 bsp 目录整编生成的 bsp/pub/
Hi3516CV610_emmc_image_musl/emmc_burn_table.xml 分区表文件自动填充分区,按xml文件配置的分区直接进行烧写。烧写 ext4 文件系统裸镜像(raw image)建议采用分段烧写的方式。以 96M 文件系统为例,使用 split 命令将裸文件系统镜像拆分成 3 个 32M 的镜像分段烧写。
步骤1 烧写u-boot

mw.b 0x41000000 0xFF 0x40000
tftp 0x41000000 boot_image.bin
mmc write 0x0 0x41000000 0x0 0x200
reset
  • 1
  • 2
  • 3
  • 4

步骤2 烧写环境变量

mw.b 0x41000000 0xFF 0x40000
tftp 0x41000000 emmc_env.bin
mmc write 0x0 0x41000000 0x400 0x200
  • 1
  • 2
  • 3

步骤3 烧写kernel

mw.b 0x41000000 0xFF 0x400000
tftp 0x41000000 uImage
mmc write 0x0 0x41000000 0x800 0x2000
  • 1
  • 2
  • 3

步骤4 烧写文件系统

mw.b 0x41000000 0xFF 0x2000000
tftp 0x41000000 rootfs_hi3516cv610_96M.ext4.part0
mmc write 0x0 0x41000000 0x2800 0x10000
mw.b 0x41000000 0xFF 0x2000000
tftp 0x41000000 rootfs_hi3516cv610_96M.ext4.part1
mmc write 0x0 0x41000000 0x12800 0x10000
mw.b 0x41000000 0xFF 0x2000000
tftp 0x41000000 rootfs_hi3516cv610_96M.ext4.part2
mmc write 0x0 0x41000000 0x22800 0x10000
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

2.6 启动新系统

reset # 重启进入新系统。

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
红包 2 2 评论 打赏
评论
4个
内容存在敏感词
手气红包
  • dianguai14 2024-03-27 14:29:35
    回复
    你好,请问SDK有下载方式吗?有偿 电话:17607561407
  • Pere_Ai 2024-05-14 10:35:34
    回复
    您好,请问有hi3516cv610 的板子出售吗? 微信19820223420 辛苦加一下
  • ezreal 2024-07-08 15:18:54
    回复
    SDK在哪里下载?已经购买开发板了
  • hdb740 2024-07-27 09:29:23
    回复
    对于初学者,第二步安装、升级Hi3516CV610Demo板开发环境,基本看不懂,能写详细吗? 能解释下:为什么要做这个操作?
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
Keith_Cheung
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

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

举报反馈

举报类型

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

详细说明

审核成功

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

审核失败

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

小包子的红包

恭喜发财,大吉大利

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

    易百纳技术社区