Hi3861开发环境搭建 ||避坑指南||
[适用于几乎所有以Hi3861为主控的开发板]
前言:
这几天为了搭建Hi3861的开发环境,看了不少官方文档和视频,但是依然折腾了很久才配置好编译、上传都能正常的环境,这其中踩了不少坑,希望通过这篇文章能让大家少踩点。
当然其实主要问题还是源码更新、视频教程更新还有文档更新速度没匹配上
参考海思社区 (hisilicon.com)
1.下载安装 HUAWEI DevEco Device Tool
为了减少可能出现问题的源头,建议各位和我一样直接在Windows下进行部署,用VSCode进行代码编写、编译和上传,不需要其他额外工具或者服务器之类的,也不用折腾Linux
首先下载最新版的 DevEco Device Tool
官方网址:华为集成开发环境IDE DevEco Device Tool下载 | HarmonyOS设备开发
安装过程中它会自动检测你的环境,python版本请严格按照工具的要求,VSCode直接升级到最新版即可
2.下载SDK
打开VSCode,打开DevEco Device Tool主页,点击“新建工程”
在新建弹窗中,工程名、路径什么的可以先不填,这里主要是为了下载SDK。SOC:选择“HI3861”,SDK栏如果显示“hi3861_hdu_iot@1.0.0(Uninstalled)”,则点击“下载”按钮,SDK会自动下载
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IfFFKFX5-1680627386489)(null)]
5.安装串口驱动
不同的开发板使用的usb转ttl芯片可能不太一样,这个具体得看开发板厂家的文档
但是使用CH340系列的都可以直接装官方这个驱动
https://hispark.obs.cn-east-3.myhuaweicloud.com/DevTools_Hi3861V100_v1.0.zip
下载解压后进入usb_serial_driver
安装一下里面的驱动
4.下载并导入源码
如果你是看的小熊派的视频,并且下载了它的源码的话,在我们现在的环境中是没办法正常编译的,个人猜测是版本不同了,小熊派自己的仓库更新得不是很及时
不过不管是什么开发板,下面这个源码肯定是最新且可用的。
(不直接新建是因为新建的不方便导入案例分析学习,有的仓库的案例太旧根本编译不了)
https://gitee.com/HiSpark/hi3861_hdu_iot_application
下载完成后打开VSCode,打开DevEco Device Tool主页,点击导入工程
在导入工程弹窗中选择Hi3861 SDK目录,点击导入
。(如果采用zip包下载,SDK名称为hi3861_hdu_iot_application-master,如果采用git下载SDK名称为hi3861_hdu_iot_application,此处以采用zip下载为例)
在后续导入工程弹窗,SOC栏选择Hi3861,开发板栏选择hi3861,框架栏选择hb,之后点击导入
,等待导入成功即可。
5.编译
配置好环境上来就去build
可能还是会出问题的,不过这个就不一定是环境问题
大家可以看教程写个helloworld再编译试试看
编译这里只要代码是对的基本不会有太大问题(然而官方源码确实就是有的地方有错的)
在DevEco Device Tool窗口中,点击左侧build
即可编译
建议各位在修改了代码或者build.gn后先点一下build上面的clean再编译,不然有时它不会编译你改变后的东西
补充
这里还有很重要的一点就是示例参考,如果各位直接复制粘贴小熊派教程里的源码过来编译是肯定会出错的
大家要看示例的话可以到源码的src/vender/
下
这里有小熊派和润和提供的示例(它们相互其实都通用的,而且有些地方官方写错的他们都还一样一起错)
个人比较喜欢润和的,因为更新时间更近,而且编译润和的示例很简单
只需要修改 hi3861_hdu_iot_application\src\applications\sample\wifi-iot\app\BUILD.gn
文件,增加 demo 编译目标:
lite_component("app") {
features = [
"startup",
"//vendor/hihope/hispark_pegasus/demo:demo",
]
}
然后修改src/vendor/hihope/hispark_pegasus/demo/BUILD.gn
,根据需要取消对应的注释就能编译对应的示例程序
6.烧录
如果串口驱动安装好了的话,此时插上板子就应该能够在设备管理器中看到新增了一个串口设备
打开DevEco Device Tool,点击左侧工程配置
,找到upload_port
选项,选择开发板对应的烧录串口
(注意烧录时关掉串口助手,否则会占用串口无法烧录)
点击左下角upload
键,等待提示(出现Connecting,please reset device…),手动进行开发板复位(按下开发板reset键)
然后等待烧录完成即可
串口
目前DevEco Device Tool中的串口监视器还是有点bug的,导致我一度以为自己程序出错了,建议各位还是使用专门的串口助手比如xcom sscom之类的
总结
其实官方文档对于环境配置还是相对详细的,只不过这个环境配置文档并没有很好的和各个开发板的教程配套起来,我做了一点点的补充,大家环境按这个配,代码有选择性的按教程来,完全跟着两家开发板的教程环境会比较难配,代码参考也是尽量看源码里面的
还有遇到的其他问题建议看官方FAQ海思社区 (hisilicon.com)文章来源:https://uudwc.com/A/3wjv9
或者直接社区提问文章来源地址https://uudwc.com/A/3wjv9