使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板 原创 精华

许思维
发布于 2020-10-9 19:19
浏览
18收藏

鸿蒙官方文档的“Hi3861开发板第一个示例程序”中描述了——如何使用DevEco Device Tool工具烧录二进制文件到Hi3861开发板;

本文将介绍如何使用HiBurn工具烧录鸿蒙的.bin文件到Hi3861开发板。

 

获取HiBurn工具
通过鸿蒙官方文档我们知道DevEco Device Tool是一个VSCode插件,它以.vsix文件的形式向开发者提供。事实上,这个文件.vsix文件是一个zip格式的压缩文件。你可以在git bash或Linux环境中,使用file命令将它识别出来:

$ file DevEcoDeviceTool-1.0.0.vsix
DevEcoDeviceTool-1.0.0.vsix: Zip archive data, at least v2.0 to extract

 

在Windows上,你可以使用一般的压缩解压软件将它打开,并将它解压开。

解压之后,可以在extension\deveco\tools子目录中看到一个文件名为 HiBurn.exe 的文件,它就是我们今天要介绍的HiBurn工具(你也可以从本文的附件中直接下载 HiBurn.zip 解压)。

 

使用HiBurn烧写.bin文件到Hi3861
Win10系统执行前需要右键“属性”->解除锁定,否则会系统默认会报安全警告,不允许执行。

双击单开后,界面如下:

使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板-鸿蒙开发者社区

 

1. 点界面左上角的Setting->Com settings进入串口参数设置界面,串口参数设置界面上,Baud为波特率,默认115200,可以选择921600,2000000,或者 3000000(实测最快支持的值),其他参数保持默认,点“确定”保存;

 使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板-鸿蒙开发者社区
2. 根据设备管理器,选择正确的COM口,例如我的开发板是COM8,如果是打开程序之后才插串口线的,可以点一下“Refresh”刷新串口下拉框的可选项;

    使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板-鸿蒙开发者社区使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板-鸿蒙开发者社区
3. 点“Select file”弹出文件选择对话框,选择编译生成的allinone.bin文件,这个bin其实是多个bin合并的文件,从命名上也能看得出来,例如,我选择的Z:\harmonyos\openharmony\out\wifiiot\Hi3861_wifiiot_app_allinone.bin
勾选“Auto burn”,自动下载多个bin文件,到这里,配置完毕,应如下图;

 使用HiBurn烧录鸿蒙.bin文件到Hi3861开发板-鸿蒙开发者社区
4. 点击Connect,连接串口设备,这时HiBurn会打开串口设备,并尝试开始烧写,需要确保没有其他程序占用串口设备(烧写之前可能正在用超级终端或串口助手查看串口日志,需要确保其他软件已经关闭了当前使用的串口);
复位设备,按开发板的RESET按键;
等待输出框出现三个"=========================================="以及上方均出现successful,即说明烧录成功;

5. 烧录成功后,需要手动点“Disconnect”断开串口连接,否则会提示“Wait connect success flag (hisilicon) overtime.”;
 

和 DevEco Device Tool方式对比
使用HiBurn烧录相对于使用DevEco Device Tool烧录而言,好处主要有以下几点:

1. 不依赖VSCode,你可以不用安装VSCode、nodejs、JDK、以及一些npm包;
2. 下载速度更快,HiBurn.exe最大波特率可以设置到3000000,而DevEco Device Tool最大只能为921600,是它的三倍;

 

HiBurn方式烧录目前的缺点主要是:

1. 需要手动点Disconnect主动断开连接,否则默认会重复下载;烧录成功后,如果你不断开串口,并且再次按了一下RESET按键,你会发现,它又烧录了一遍。
 2. HiBurn的串口参数无法保存,你关闭之后下次打开还需要重新设置,而DevEco则会可以保存串口参数;

3. HiBurn相对DevEco来说,操作步骤更多一些,也稍微复杂一点;

 

 

 

 

 

 

 

 

 

 

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
HiBurn.zip 1.81M 4094次下载
已于2020-12-26 10:27:57修改
11
收藏 18
回复
举报
8条回复
按时间正序
/
按时间倒序
鸿蒙开发者社区官方账号
鸿蒙开发者社区官方账号

好东西,烧录神器。

已于2020-10-9 20:11:28修改
1
回复
2020-10-9 20:11:19
红叶亦知秋
红叶亦知秋

感谢分享,很有帮助

回复
2020-10-9 20:12:43
老克
老克

神器啊~感谢老师分享

回复
2020-10-9 20:23:02
chaijunkun
chaijunkun

HiBurn缺点中的第一条,是因为在上面的选项中选择了“Auto Burn”。默认是关闭的。需要在reset开发板后,手动点击“send file”。如果打开了此选项,则reset后自动下发文件。

1
回复
2020-10-10 18:07:51
chaijunkun
chaijunkun

其实分析了Deveco的源码之后发现,核心过程通过Nodejs的childProcess.spawn进行子进程调用,将拼接好的烧录参数传给HiBurn。本质上还是通过HiBurn烧录的。

3
回复
2020-10-10 18:12:39
许思维
许思维 回复了 chaijunkun
其实分析了Deveco的源码之后发现,核心过程通过Nodejs的childProcess.spawn进行子进程调用,将拼接好的烧录参数传给HiBurn。本质上还是通过HiBurn烧录的。

是的,我上周尝试在Linux系统上的VSCode里面用DevEco插件,然后发现不行,最后把它解压开,看了代码,才发现里面有一个 HiBurn.exe 的;最后用 wine 运行 HiBurn.exe 发现可以烧录。

2
回复
2020-10-10 18:45:11
mb61514aaa02d12
mb61514aaa02d12

请问我的hi3861一直连接超时 怎么解决

回复
2021-9-28 21:06:53
许思维
许思维 回复了 mb61514aaa02d12
请问我的hi3861一直连接超时 怎么解决

确认串口号正确,再确认点Download之后按了开发板的复位键

回复
2021-9-28 22:10:25
回复
    相关推荐