ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

华为海思hi3861鸿蒙开发环境的搭建

2022-07-03 22:03:08  阅读:294  来源: 互联网

标签:烧录 鸿蒙 python hi3861 编译 ubuntu 海思


hi3861

hi3861是一款带wifi的单片机,160Mhz,risc-v架构,内嵌2M flash,352kb sram,可串口烧录,与鸿蒙生态深度绑定,应该是没法用框架或者bare metal开发。定位类似于esp8266,性能比esp8266略低,但是看到有厂家用hi3861作网卡作了安防摄像头,猜测吞吐量比较大?

迷惑行为

不知道处于市场还是安全考虑,普通人并不能在hi3861其官下载到芯片手册或开发资料等任何东西。裸芯片在淘宝上也买不到,只能买到安信可出的hi-12f模组。
但是深挖互联网,还是能在各种技术论坛找到流出资料的。

开发板

入门建议直接安信可的hi-12f-kit,20左右。小熊派应该是和官方合作比较密切的厂商,他们也有开发板,示例代码也很全。

鸿蒙

鸿蒙分为两个,一个是手机用的,另一个是嵌入式设备的OpenHarmony。

手机的鸿蒙

华为手机为规避潜在的美国对开源软件的制裁,开发的一套闭源系统,兼容安卓软件,自建生态hms对抗gms。

OpenHarmony

开源系统,根据设备计算性能和内存,分为三种。hi3861用的轻量系统。目测没法运行安卓应用。

轻量系统(mini system)

面向MCU类处理器例如Arm Cortex-M、RISC-V 32位的设备,硬件资源极其有限,支持的设备最小内存为128KiB

小型系统(small system)

面向应用处理器例如Arm Cortex-A的设备,支持的设备最小内存为1MiB

标准系统(standard system)

面向应用处理器例如Arm Cortex-A的设备,支持的设备最小内存为128MiB

hi3861开发环境

鸿蒙系统在快速迭代,发展,编译方法也一直在变,但一直朝着方便的方向发展。
目前的编译环境仅限ubuntu,网上存在着各种纯windows下的编译方法,个人不是很推荐,这些方法并非官方支持的,而且大部分年代久远,目前新版的鸿蒙大概率也不支持了,华为铁了心官方的编译方法就在ubuntu。
好在华为提供了HUAWEI DevEco Device Tool,以VSCode插件的形式支持了OpenHarmony的嵌入式开发,目前发布版本3.0(2022年6月30日发布),在windows和虚拟机ubuntu上都安装后,在windwos下vscode下编辑代码,然后系统会自动在ubuntu上远程编译,再自动把编译出来的bin拉倒本地,执行串口烧录。

环境搭建-ubuntu部分

必须用ubuntu20.04系统(python版本问题,只支持python3.8或3.9),桌面环境不要也行,可用ubuntu server版。
坑: 虚拟机必须配置私钥登录,且同时开启密码登录PasswordAuthentication yes,这是当前版本的bug。这个bug是薛定谔的bug,各个版本都会围绕认证出现不同的bug,本文使用一种终极解觉方案。参考链接

打开网站HUAWEI DevEco Device Tool,下载ubuntu版到虚拟机内部
image
之后根据官方教程安装即可,没有坑。

环境搭建-windwos部分

坑: 预先装好vscode和python3.9,不要让这个工具自动下载vscode和python。
坑: 如果系统中装了多个python环境,安装过程中会要求选一个,千万别选错版本,别选成anaconda,别选成其他软件装的python(例如platformio会自己装一个自己专用的python)
之后根据官方教程安装即可,没有坑。

开发流程

新建工程

鸿蒙非常大,他能裁剪,可以把系统裁剪到适用于单片机的水平,并且搭配上适当的驱动,类似hal。
完整的鸿蒙代码有10G,但是华为提供了包管理器hpm,类似于npm,每次只下载需要的包就行。
开发一般是基于别人配置好的底包进行开发,新建工程时候选小熊派的代码作为底包比较不错。
使用小熊派的实例代码新建工程,如果用官方示例会连不上ap打不开,但是小熊派的示例却没问题。
image

编译

选择编译点灯的代码
image

编译需要一些特定的编译环境,点左边的projict seting,出来右边的tool chain界面,如果没有绿色的对钩,点一下install就能自动下载所需环境,然后就绿了。
image
绿了之后点build就能构建。
image

烧录

ide支持自动把编译出来的bin拉倒本地,执行串口烧录。但首先需要点这个绿色三角进行连接,连接本地和ubuntu之间的环境。
点完之后应该是变为红色方块,并且不变会绿色三角。变回去就是出问题了,连不上。
image
解决方案
目前解决问题的方法是配置ubuntu ssh同时支持秘钥和密码登录,本地ssh配置好秘钥的绝对路径。

之后选好本地串口,烧录即可,下载大概需要一分钟,免安检烧录时灵时不灵,大部分时候需要自己按一下开发板的重启。
image

最终

image

标签:烧录,鸿蒙,python,hi3861,编译,ubuntu,海思
来源: https://www.cnblogs.com/liux-pro/p/16439078.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有