将鸿蒙2.0刷到润和Hi3861、Hi3516和Hi3518开发板上,附源码

目前网上已经有很多关于刷鸿蒙2.0的文章,我整理了一下,并结合自己的经验,在本文中阐述了从配置环境,到编译鸿蒙源代码,再到刷机的全过程。

注意:这里的Hi3861相当于Ardiuno,价格也差不多,主要用于控制外设,本身并没有多少计算能力,Hi3516Hi3518的配置相对较高,支持GUI。

有点类似于树莓派。本文主要以Hi3861为例,其他两个开发板的编译和刷机过程类似。Hi3581需要分为编译环境和烧录环境,目前编译环境只能是Linux,推荐使用Ubuntu Linux 20.04,用这个版本你会少了很多麻烦。

至少Python环境直接是3.8.5了,大家可以不用理会Python了,因为编译HarmonyOS,Python的版本是3.7或以上版本即可,经过测试,Python 3.9也没问题。

Hi3581的刷机环境需要使用Windows,推荐使用Windows 10,Home版、专业版都经过了测试,没问题,企业版的Windows还没测试,但大概率也没问题。

所以这里是重点:需要准备Ubuntu 20.04和Windows 10。Ubuntu 20.04可以安装的虚拟机中,我用的是VMWare,这样可以通过快照在不同状态之前切换。

1. 配置编译环境现在开始配置Ubuntu 20.04的编译环境,读者需要按着如下几步操作:

(1)配置 repo 工具如果你的Linux系统上还没有配置repo命令,需要先按下面的操作下载并配置repo命令行工具:

 
  1. mkdir ~/bin/curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > ~/bin/repochmod +x ~/bin/repoecho 'export PATH=~/bin:$PATH' >> ~/.bashrcsource ~/.bashrc

如果还没有curl命令,需要先执行下面的命令下载curl:
sudo apt install curl(2)下载HarmonyOS源代码读者可按下面的操作下载HarmonyOS的最新源代码

 
  1. mkdir -p ~/harmonyos/openharmony && cd ~/harmonyos/openharmonysudo apt install --no-install-recommends git python # repo工具本身是python脚本,它会调用git命令下载单个代码仓git config --global user.name "yourname"git config --global user.email "your-email-address"repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verifyrepo sync -c # 以后每天同步远程仓的修改,只需要执行这一条命令即可

读者需要将yourname改成自己的名字,将your-email-address改成自己的email。
(3)检测mkfs.vfat和mcopy命令是否安装在终端执行这两个命令,如果没有安装,使用apt安装这两个命令(4)安装各种工具和包在终端执行下面的命令进行安装:sudo apt-get install dosfstools mtools  # 官方文档说明的两个文件系统打包工具 sudo apt-get install zip       # 官方文档虽然没有写,但是打包rootfs过程中需要使用 sudo apt install mtd-utils     # 3518需要打包 jffs2 镜像的mkfs.jffs2 命令,需要安装这个包 sudo apt install build-essential # 安装gcc/g++/make等工具,ffmpeg的测试过程中需要使用(5)下载各种编译器和工具包下面的命令分别下载了gn、ninja、LLVM、hc-gen包,一步到位

 
  1. # 下载gn/ninja/LLVM/hc-gen包URL_PREFIX=https://repo.huaweicloud.com/harmonyos/compilerDOWNLOAD_DIR=~/Downloads # 下载目录,可自行修改TOOLCHAIN_DIR=~/harmonyos/toolchain # 工具链存放目录,可自行修改
    [ -e $DOWNLOAD_DIR ] || mkdir $DOWNLOAD_DIR[ -e $TOOLCHAIN_DIR ] || mkdir -p $TOOLCHAIN_DIR
    wget -P $DOWNLOAD_DIR $URL_PREFIX/gn/1523/linux/gn.1523.tarwget -P $DOWNLOAD_DIR $URL_PREFIX/ninja/1.9.0/linux/ninja.1.9.0.tarwget -P $DOWNLOAD_DIR $URL_PREFIX/clang/9.0.0-34042/linux/llvm-linux-9.0.0-34042.tarwget -P $DOWNLOAD_DIR $URL_PREFIX/hc-gen/0.65/linux/hc-gen-0.65-linux.tar
    # 编译 hi3861 需要 riscv 编译工具链wget -P $DOWNLOAD_DIR $URL_PREFIX/gcc_riscv32/7.3.0/linux/gcc_riscv32-linux-7.3.0.tar.gz
    # 解压gn/ninja/LLVM/hc-gen包:tar -C $TOOLCHAIN_DIR/ -xvf $DOWNLOAD_DIR/gn.1523.tartar -C $TOOLCHAIN_DIR/ -xvf $DOWNLOAD_DIR/ninja.1.9.0.tartar -C $TOOLCHAIN_DIR/ -xvf $DOWNLOAD_DIR/llvm-linux-9.0.0-34042.tartar -C $TOOLCHAIN_DIR/ -xvf $DOWNLOAD_DIR/hc-gen-0.65-linux.tartar -C $TOOLCHAIN_DIR/ -xvf $DOWNLOAD_DIR/gcc_riscv32-linux-7.3.0.tar.gz
    # 向 ~/.bashrc 中追加gn/ninja/LLVM/hc-gen路径配置:cat <<EOF >> ~/.bashrcTOOLCHAIN_DIR=$TOOLCHAIN_DIRexport PATH=\$TOOLCHAIN_DIR/gn:\$PATHexport PATH=\$TOOLCHAIN_DIR/ninja:\$PATHexport PATH=\$TOOLCHAIN_DIR/llvm/bin:\$PATHexport PATH=\$TOOLCHAIN_DIR/hc-gen:\$PATHexport PATH=\$TOOLCHAIN_DIR/gcc_riscv32/bin:\$PATHexport PATH=~/.local/bin:\$PATH # 用户pip二进制工具目录EOF
    # 生效环境变量source ~/.bashrc

(6)改变pip源,加速下载
执行下面的命令重新配置pip.conf文件

 
  1. mkdir ~/.pip/cat <<EOF > ~/.pip/pip.conf[global]index-url = https://mirrors.huaweicloud.com/repository/pypi/simpletrusted-host = mirrors.huaweicloud.comtimeout = 120EOF

另外,如果没有pip命令,是因为默认叫pip3,可以执行下面的命令创建pip命令。

  •  

ln -s /usr/bin/pip3 /usr/bin/pip(7)继续安装各种包

 
  1. # 安装 setuptools 和 kconfiglibpip3 install setuptools kconfiglib
    # 安装编译hi3861需要的pip包pip3 install scons ecdsa pycryptodome

2. 编译HarmonyOS源代码
(1)查看支持的平台通过执行python build.py -h命令,可以查看HarmonyOS当前支持哪些平台,如图

图1第1个是hi3561,第2个是hi3518,第3个是hi3861。(2)分别执行和3个命令来编译这3个版本的目标文件如果要增加调试信息,后面可以加-b debug

 
  1. # 编译hi3561python build.py ipcamera_hi3516dv300 -b debug# 编译hi3518 python build.py ipcamera_hi3518dv300 -b debug# 编译hi3861python build.py wifiiot

执行这3行命令,会在<HarmonyOS源代码根目录>/out目录下出现对应的子目录,如Hi3861编译完,会出现wifiiot子目录,二进制目标文件都在该目录中。烧录文件是Hi3861_wifiiot_app_allinone.bin。
编译完的二进制文件下载方式在本文后面。3. 烧录HarmonyOS本文以Hi3861开发板为例,开发板样式如图2所示。

需要按下面的步骤进行烧录。

(1)将Hi3861_wifiiot_app_allinone.bin文件复制到Windows10中(随便放一个目录就可以)。

(2)用Hi3861连接线将开发板与PC连接。

(3)检查设备管理器,看看是否正确识别Hi3861开发板,如果正确识别。

如果设备管理器没有“端口(COM和LPT)”节点,那是因为被隐藏了,点击“查看”>“显示隐藏的设备”菜单项,就会显示。

通常Windows 10会自动安装驱动,如果不幸没有自动安装驱动,那么可以自行下载。Hi3861使用的是CH340G芯片,读者可自己在google搜索该芯片驱动的下载地址,也可以在本文后面下载驱动文件。

(4)运行HiBurn.exe这个工具是海思做的,用于烧录开发板,华为推出的驱动开发工具内置了该工具,读者也可以在本文后面下载该工具。运行后,在COM中选择图3看到的COM端口号,本例是COM4。

(5)选择传输速率点击HiBurn中的Setting > com settings菜单项,弹出Com settings对话框,在Baud中选择3000000,让烧录速度更快。https://xpanx.com/2117.html

(6)点击Select file按钮,选择Hi3861_wifiiot_app_allinone.bin文件,在下方列表中会出现如图7所示的3个烧录项。这个文件其实是多个烧录项的合体。

(7)开始烧录选中Send file按钮旁边的Auto burn复选框,然后点击上方的connect按钮,这时下方日志栏会出现Connecting字样,

8)最后按一下图2所示开发板上的Reset Key,就会开始烧录,如图9所示。这是因为Hi3861开发板需要重启,才会检测boot动作,如果遇到烧录的指令,就会烧录,否则就会正常启动。如果烧录成功,会显示所示的信息。

另外,AI Camera和DIY IPC套件附赠的USB串口线中集成了PL2302芯片,需要安装USB-to-Serial Comm Port.exe驱动才可以被Windows识别,下载地址:http://www.hihope.org/downloadOK,然后就可以愉快滴玩耍了。后期会推出基于HI3861以及其他HarmonyOS开发板的有趣的IoT项目的文章和视频课程,敬请期待。

源码下载:

https://xpanx.com/2117.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在现有省、市港口信息化系统进行有效整合基础上,借鉴新 一代的感知-传输-应用技术体系,实现对码头、船舶、货物、重 大危险源、危险货物装卸过程、航管航运等管理要素的全面感知、 有效传输和按需定制服务,为行政管理人员和相关单位及人员提 供高效的管理辅助,并为公众提供便捷、实时的水运信息服务。 建立信息整合、交换和共享机制,建立健全信息化管理支撑 体系,以及相关标准规范和安全保障体系;按照“绿色循环低碳” 交通的要求,搭建高效、弹性、高可扩展性的基于虚拟技术的信 息基础设施,支撑信息平台低成本运行,实现电子政务建设和服务模式的转变。 实现以感知港口、感知船舶、感知货物为手段,以港航智能 分析、科学决策、高效服务为目的和核心理念,构建“智慧港口”的发展体系。 结合“智慧港口”相关业务工作特点及信息化现状的实际情况,本项目具体建设目标为: 一张图(即GIS 地理信息服务平台) 在建设岸线、港口、港区、码头、泊位等港口主要基础资源图层上,建设GIS 地理信息服务平台,在此基础上依次接入和叠加规划建设、经营、安全、航管等相关业务应用专题数据,并叠 加动态数据,如 AIS/GPS/移动平台数据,逐步建成航运管理处 "一张图"。系统支持扩展框架,方便未来更多应用资源的逐步整合。 现场执法监管系统 基于港口(航管)执法基地建设规划,依托统一的执法区域 管理和数字化监控平台,通过加强对辖区内的监控,结合移动平 台,形成完整的多维路径和信息追踪,真正做到问题能发现、事态能控制、突发问题能解决。 运行监测和辅助决策系统 对区域港口与航运业务日常所需填报及监测的数据经过科 学归纳及分析,采用统一平台,消除重复的填报数据,进行企业 输入和自动录入,并进行系统智能判断,避免填入错误的数据, 输入的数据经过智能组合,自动生成各业务部门所需的数据报 表,包括字段、格式,都可以根据需要进行定制,同时满足扩展 性需要,当有新的业务监测数据表需要产生时,系统将分析新的 需求,将所需字段融合进入日常监测和决策辅助平台的统一平台中,并生成新的所需业务数据监测及决策表。 综合指挥调度系统 建设以港航应急指挥中心为枢纽,以各级管理部门和经营港 口企业为节点,快速调度、信息共享的通信网络,满足应急处置中所需要的信息采集、指挥调度和过程监控等通信保障任务。 设计思路 根据项目的建设目标和“智慧港口”信息化平台的总体框架、 设计思路、建设内容及保障措施,围绕业务协同、信息共享,充 分考虑各航运(港政)管理处内部管理的需求,平台采用“全面 整合、重点补充、突出共享、逐步完善”策略,加强重点区域或 运输通道交通基础设施、运载装备、运行环境的监测监控,完善 运行协调、应急处置通信手段,促进跨区域、跨部门信息共享和业务协同。 以“统筹协调、综合监管”为目标,以提供综合、动态、实 时、准确、实用的安全畅通和应急数据共享为核心,围绕“保畅通、抓安全、促应急"等实际需求来建设智慧港口信息化平台。 系统充分整合和利用航运管理处现有相关信息资源,以地理 信息技术、网络视频技术、互联网技术、移动通信技术、云计算 技术为支撑,结合航运管理处专网与行业数据交换平台,构建航 运管理处与各部门之间智慧、畅通、安全、高效、绿色低碳的智 慧港口信息化平台。 系统充分考虑航运管理处安全法规及安全职责今后的变化 与发展趋势,应用目前主流的、成熟的应用技术,内联外引,优势互补,使系统建设具备良好的开放性、扩展性、可维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值