《HarmonyOS开发 - IPC Camera开发笔记》第3章 HiSpark IPC Camera源码编译与下载

2024-08-30 12:18

本文主要是介绍《HarmonyOS开发 - IPC Camera开发笔记》第3章 HiSpark IPC Camera源码编译与下载,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

开发环境:
开发系统:Ubuntu 20.04
开发板:HiSpark IPC Camera(Hi3518)

3.1 Harmony源码编译

Harmony在V1.1.1之后引入hb工具,因此不同的版本会有不同的编译方式。

3.1.1 Harmony V1.0编译

进入源码目录,执行以下命令:

$ python build.py ipcamera_hi3518ev300

ipcamera_hi3518ev300代表HiSpark IPC Camera开发板。

然后等待编译完成。

在这里插入图片描述

编译成功后,在out目录会生成ohos_image.bin, rootfs.img, userfs.img三个文件。

在这里插入图片描述

3.1.2 Harmony V1.1.4编译

HiSpark IPC DIY Camera基于华为海思Hi3518芯片,对应的产品名字是ipccamera_hispark_aries。
接下来编译ipccamera_hispark_aries,这里采用hb工具编译,在代码根目录下执行

$hb set

然后输入‘.’表示当然路径。

这里我们选择ipccamera_hispark_aries

在这里插入图片描述

可使用上下键进行选择,也可使鼠标选择。

然后输入以下命令开始编译:

$ hb build -f

等待编译完成。

编译成功后,在out目录会生成ohos_image.bin, rootfs_jffs2.img, userfs_jffs2.img三个文件。

在这里插入图片描述

ohos_image.bin, rootfs_jffs2.img, userfs_jffs2.img三个文件是需要烧写的,因此需要拷贝到Windows。

值得注意的是,Harmony最新均是采用hb编译。

3.2 Harmony固件烧写

HiSpark IPC Camera烧写Harmony固件到flash可以采用两种方式:串口方式、USB方式。
下面一一介绍。

3.2.1串口烧写

这里使用海思自研的烧录工具Hitool。

接下来准备好需要用到的文件,由于没有编译Hi3518ev300的Uboot,这里可以到润和官网下载。

固件下载地址

在这里插入图片描述

下载之后解压需要用到里面的Uboot文件。

在这里插入图片描述

这里按照分区方式烧写,可以将uboot、ohos_image.bin, rootfs_jffs2.img, userfs_jffs2.img四个文件一起烧写,也可以只烧写ohos_image.bin, rootfs_jffs2.img, userfs_jffs2.img三个文件。

然后准备一个分区文件ipcamera_hi3518.xml,输入以下内容:

<?xml version="1.0" encoding="GB2312" ?>
<Partition_Info ProgrammerFile="">
<Part Sel="1" PartitionName="fastboot" FlashType="spi" FileSystem="none" Start="0" Length="1M" SelectFile="u-boot-hi3518ev300.bin"/>
<Part Sel="1" PartitionName="ohos_image" FlashType="spi" FileSystem="none" Start="1M" Length="6M" SelectFile="OHOS_Image.bin"/>
<Part Sel="1" PartitionName="rootfs" FlashType="spi" FileSystem="none" Start="7M" Length="8M" SelectFile="rootfs_jffs2.img"/>
<Part Sel="1" PartitionName="userfs" FlashType="spi" FileSystem="none" Start="15M" Length="1M" SelectFile="userfs_jffs2.img"/>
</Partition_Info>

准备好所有文件资源就可以开始烧写了。

在这里插入图片描述

首先打开Hitool,选择HiBurn工具。

在这里插入图片描述

选择hi3518ev300芯片。

在这里插入图片描述

在 USB 线没有上电的前提下,选择好对应的串口号后,选择传输方式为串口,然后选择分区文件表。

在这里插入图片描述

接着勾选所有文件,上电,再点击擦除按钮。

在这里插入图片描述

不管是擦除还是烧写,都需要拔掉电源再插上电源。可以按照HiBurn控制台的提示进行操作。

在这里插入图片描述

等待烧写完成即可,串口烧写的时间比较长,请耐心等待。

在这里插入图片描述

修改U-boot的bootcmd及bootargs内容,打开终端,输入以下语句到终端:

setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";
setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";
saveenv

在这里插入图片描述
然后输入reset即可重启。

在这里插入图片描述

输入回车会出现 OHOS # 提示符表示系统启动完成。

3.2.2 USB烧写

首先安装HiUSBBurnDriver,不然无法使用USB烧写。

在烧写之前,先擦除分区,参看上一节内容。

接下来就可以烧写固件了。

在这里插入图片描述

等待烧写完成即可。

在这里插入图片描述

输入以下语句到终端:

setenv bootargs "console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M";
setenv bootcmd "sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000";
saveenv

然后输入reset即可重启。

在这里插入图片描述



欢迎访问我的网站

BruceOu的哔哩哔哩
BruceOu的主页
BruceOu的博客
BruceOu的CSDN博客
BruceOu的简书
BruceOu的知乎


欢迎订阅我的微信公众号

关注公众号[嵌入式实验楼]获取更多资讯

这篇关于《HarmonyOS开发 - IPC Camera开发笔记》第3章 HiSpark IPC Camera源码编译与下载的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1120796

相关文章

基于Python开发电脑定时关机工具

《基于Python开发电脑定时关机工具》这篇文章主要为大家详细介绍了如何基于Python开发一个电脑定时关机工具,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 简介2. 运行效果3. 相关源码1. 简介这个程序就像一个“忠实的管家”,帮你按时关掉电脑,而且全程不需要你多做

Java中的Opencv简介与开发环境部署方法

《Java中的Opencv简介与开发环境部署方法》OpenCV是一个开源的计算机视觉和图像处理库,提供了丰富的图像处理算法和工具,它支持多种图像处理和计算机视觉算法,可以用于物体识别与跟踪、图像分割与... 目录1.Opencv简介Opencv的应用2.Java使用OpenCV进行图像操作opencv安装j

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

Java汇编源码如何查看环境搭建

《Java汇编源码如何查看环境搭建》:本文主要介绍如何在IntelliJIDEA开发环境中搭建字节码和汇编环境,以便更好地进行代码调优和JVM学习,首先,介绍了如何配置IntelliJIDEA以方... 目录一、简介二、在IDEA开发环境中搭建汇编环境2.1 在IDEA中搭建字节码查看环境2.1.1 搭建步

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

HarmonyOS学习(七)——UI(五)常用布局总结

自适应布局 1.1、线性布局(LinearLayout) 通过线性容器Row和Column实现线性布局。Column容器内的子组件按照垂直方向排列,Row组件中的子组件按照水平方向排列。 属性说明space通过space参数设置主轴上子组件的间距,达到各子组件在排列上的等间距效果alignItems设置子组件在交叉轴上的对齐方式,且在各类尺寸屏幕上表现一致,其中交叉轴为垂直时,取值为Vert

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template