电子产业一站式赋能平台

PCB联盟网

搜索
查看: 1416|回复: 0
收起左侧

【HarmonyOS IPC 试用连载 】3518烧写完全攻略

[复制链接]

2607

主题

2607

帖子

7472

积分

高级会员

Rank: 5Rank: 5

积分
7472
发表于 2021-1-10 09:56:29 | 显示全部楼层 |阅读模式
【HarmonyOS IPC 试用连载 】3518烧写完全攻略,   
本帖最后由 杜潇泊 于 2021-1-9 23:19 编辑



最近刚刚到手IPC DIY Camera,花了点时间研究下了如何烧写,这里分享给同学们。依然还是废话少说尽量上干货。
1. 总览 目前官方提供的烧写方法有两种

  • 使用IDE进行烧写
  • 使用HiTool工具进行烧写
      
其中IDE烧写的方案我个人不建议大家使用。不仅仅是因为环境安装麻烦,每次烧写必须烧写UBoot也是让人超级无语。这意味着你在每次更新任何一段代码后,都得重新配置UBOOT。 所以这里主要描述如何使用
HiTool工具进行烧写。下载地址:http://www.hihope.org/download/AllDocuments下载文件Hi3516-HiTool.zip,别在意这个文件名我确定3516和3518都可以用。 下面就是这个工具运行起来的样子,注意图中两个要点

  • 芯片一定要选择正确。IPC DIY Camera选择Hi3518EV300;AI Camera选择Hi3516DV300
  • 无论下面采用何种方式烧写,串口必须选择正确。如果你插入USB串口线提示已经停产,你需要安装一下润和提供的驱动程序。官方指导:https://device.HarmonyOS.com/cn/docs/ide/user-guides/hi3516_hi3518-drivers-0000001050743695
      




HiTool总览.png (123.45 KB, 下载次数: 0)

下载附件  保存到相册  

昨天 23:00 上传


2. 串口烧写 这是最简单的烧写方法,但是烧写速度非常感人 我个人主要用他烧写UBoot镜像 配置要点如下图:

HiTool串口烧写.png (138.02 KB, 下载次数: 0)

下载附件  保存到相册  

串口烧写

昨天 22:59 上传 点击烧写后,如果一切正常输出去会打印 串口已经连接,请给单板上电,若已经上电,请断电后重新上电。 这时候果断拔下给板子供电的USB口,在重新插入(注意不是串口) HiTool输出区开始打印如下内容表示正在烧写了 ########################### ---- 10%########################## ---- 20%... 如无意外,30多秒后你会看到烧写成功的弹窗

烧写成功.png (16.84 KB, 下载次数: 0)

下载附件  保存到相册  

昨天 23:00 上传


3. USB烧写 USB烧写才是这次要分享重点。但是提供详细烧写方法之前,不得不再提一下UBOOT,因为USB烧写实际上是UBoot的能力,
不同UBoot的USB烧写方法不同。 目前适用于开发板的UBoot主要有两种,如下:


3.1. 润和版Uboot烧写方法 润和版UBoot主要来自

  • 开发板发货前预置烧写的
  • 润和资料中HiSpark_IPC_DIY摄像头_out-bin.zip。
      
这里先说重点
不建议使用润和版UBoot配合Harmony代码,因为Harmony版UBoot中携带了少量对环境的配置。润和的Demo中使用的Linux,并不依赖这些配置,但是HOS是需要的。 润和版UBoot搭配Harmony代码的已知问题大概率无法正确探测到SDIO总线上的Hi3881,也就是说启动后无法使用WIFI 具体使用方法:

  • 在操作区中选择DDR烧写,文件目录选择镜像文件的存储目录
      
相当于开启tftp服务器,等待板子从USB口获取里面的文件

HiToolDDR烧写.png (100.92 KB, 下载次数: 0)

下载附件  保存到相册  

昨天 22:59 上传

  • 重启板子,进入UBoot,使用如下命令组,逐个从电脑获取DDR目录中的文件。以kernel烧写为例:
      
#向0x40000000为其实地址的0x600000(6M)空间内写入FF

mw.b 0x40000000 0xff 0x600000;

# 从USB TFTP获取文件OHOS_Image.bin,写入地址0x40000000

usbtftp 0x40000000 OHOS_Image.bin;

# 探测SPI 0;擦除0x100000 开始的0x600000(6M)空间;从内存地址0x40000000的数据写入SPI存储器地址0x100000(1M),写入长度0x600000(6M)

sf probe 0;sf erase 0x100000 0x600000;sf write 0x40000000 0x100000 0x600000; 完整的3个分区烧写命令 #Kernel

mw.b 0x40000000 0xff 0x600000;

usbtftp 0x40000000 OHOS_Image.bin;

sf probe 0;sf erase 0x100000 0x600000;sf write 0x40000000 0x100000 0x600000;



#RootFS

mw.b 0x40000000 0xff 0x800000;

usbtftp 0x40000000 rootfs.img;

sf probe 0;sf erase 0x700000 0x800000;sf write 0x40000000 0x700000 0x800000;



#UseRFS

mw.b 0x40000000 0xff 0x100000;

usbtftp 0x40000000 userfs.img;

sf probe 0;sf erase 0xf00000 0x100000;sf write 0x40000000 0xf00000 0x100000;


3.2. Harmony版烧写方法 Harmony版UBoot可以从代码中找到,具体路径 vendor\hisi\hi35xx\hi3518ev300\uboot\out\boot\u-boot-hi3518ev300.bin 烧写前,先配置工具如下

HiTool 按分区烧写.png (137.25 KB, 下载次数: 0)

下载附件  保存到相册  

昨天 22:59 上传
重要:烧写是否成功操作流程更重要,请严格按我说的顺序操作



  • 板子上电,连接串口进入UBoot,输入命令usb device
      
此时请检查电脑设备管理器,是否出现这个设备,如果没有。请按照这个文档安装驱动。成功后再进行下一步

设备管理器.PNG (50.4 KB, 下载次数: 0)

下载附件  保存到相册  

驱动

昨天 23:00 上传

  • 回到HiTool工具,点击烧写。直到控制台打印出如下内容再进行下一步(大约需要5s)
      
# ---- 33%

# ---- 100%

Boot download completed!

  • 板子下电,重新上电,并进入UBoot,再次输入命令usb device 如果没有意外,串口会打印类似
      
hisilicon # usb deviceInstall USB Device...

version: U-Boot 2020.01

Block:64KB Chip:16MB*1

.......

resetting ...



HiTool弹窗



全量烧写.png (17.03 KB, 下载次数: 0)

下载附件  保存到相册  

昨天 23:00 上传 至此,在HiTool中勾选的全部分区都已经完成了烧写。
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则


联系客服 关注微信 下载APP 返回顶部 返回列表