【开发板漂流计划】HiSpark Wi-Fi IoT小车从零到一 原创 精华
【开发板漂流计划】HiSpark Wi-Fi IoT小车从零到一
一、环境搭建
1.1、准备工作
1.1.1 硬件资源准备
一台电脑(windows系统)、HiSpark Wi-Fi IoT小车套件、一条Type-C数据线
1.1.2 软件准备
-
下载官方提供镜像
- 下载地址(百度云):https://pan.baidu.com/s/1T0Tcl3y48C1p5L6y-6HJNg 提取码:eusr
-
下载HiBurn
- 下载地址(百度云):https://pan.baidu.com/s/1bp2ypAfH2HaNPTY2KwEhEA 提取码:1234
-
下载并安装虚拟机VMware Workstation
-
下载并安装MobaXterm工具
-
下载并安装RaiDrive工具
-
下载并安装开发板USB驱动
-
下载并安装VS Code
-
下载OpenHarmony源码
下载地址:https://repo.huaweicloud.com/harmonyos/os/1.1.4/code-v1.1.4-LTS.tar.gz
-
下载OpenHarmony源码
-
下载数字管家源码
1.1.3 开始部署环境
-
解压百度云下载的HarmonyOS
Ubuntu18.4镜像OVF.zip
文件到某个目录。
-
打开VMware Workstation工具
- 选择第1步解压的
Ubuntu18.4镜像OVF
文件夹中,点击打开
- 导入镜像到本地磁盘(选择一个磁盘空间大小≥ 10G的盘),点击
导入
。
- 点击
开启此虚拟机
,来开启虚拟机电源
-
此时虚拟机进入登录界面,点击
HarmonyOS
-
输入密码:bearpi,然后点击
登录
-
进入桌面后,点击桌面空白处
右键
,点击打开终端(E)
-
在终端中输入
ifconfig
,然后点击回车,除lo
外,另外一个就是你的网卡信息,记录你获取到的IP地址。
-
最小化VMware Workstation,回到Windows桌面上。
-
附加:如果连不上网络(如果主机网络需要拨号,如
校园网络
、ADSL拨号
等)在VMware Workstation中,点击
虚拟机
>>设置
然后在网络适配器中,改成
NAT 模式
,点击确定
然后再回到步骤8。
1.1.4 在Windows上远程连接服务器
- 打开
MobaXterm
工具,并依次点击:Session
,SSH
按钮。
- 输入连接信息,远程地址,并点击OK
- 输入账号:
bearpi
,点击回车
- 输入密码:
bearpi
,注意,输入密码的时候屏幕不会显示,输完之后点击回车
- 在弹出的界面上,点击
Yes
保存账号信息,以免下次输入
1.1.5 把ubuntu文件远程映射到Windows上
-
安装RaiDrive软件
默认安装即可。
-
切换为中文语言
-
添加链接信息
- 取消勾选只读
- SFTP://______ (这个输入 三.9 获取到的地址)
- 账户:账号和密码皆为 bearpi
- 其他默认
- 点击
确定
- 查看本地映射的ubuntu文件路径
二、源码增添
2.1 在ubuntu上拉取下载的源码
2.1.1 从桌面文件复制到虚拟盘
注意复制到的路径!!!
同理把数字管家的源码也复制到该目录…
2.1.2 编译前准备
-
代码拷贝
cp -rfa ~/knowledge_demo_smart_home/dev/device/bearpi ~/OpenHarmony1.01/device/ cp -rfa ~/knowledge_demo_smart_home/dev/team_x ~/OpenHarmony1.01/vendor/ cp -rfa ~/knowledge_demo_smart_home/dev/third_party/iot_link ~/OpenHarmony1.01/third_party/
2.1.2.1 如果命令行失败也可以手动复制
第一条命令
第二条命令
第三条命令
2.1.2.2 整合并修改完成后的目录结构如下图:
三、源码编译&烧录
编译命令:
hb set // 如果是第一次编译,Input code path 命令行中键入"./" 指定OpenHarmony工程编译根目录后 回车,
如下图所示,使用键盘上下键选中智能扫地机
hb build // 如果需要全量编译,可以添加-f 选项
四、出现的问题分析解决
Hispark 开发板相关文件修改
4.1 打开编译I2C、PWM驱动
4.1.1 修改usr_config.mk 文件
地址:device/hisilicon/hispark_pegasus/sdk_liteos/build/config/usr_config.mk
使能如下配置项
CONFIG_I2C_SUPPORT=y
CONFIG_PWM_SUPPORT=y
4.2 屏蔽字段
4.2.1 修改wifiservice 文件夹
地址:device/hisilicon/hispark_pegasus/hi3861_adapter/hals/communication/wifi_lite/wifiservice/source/wifi_hotspot.c
EnableHotspot函数中屏蔽如下字段
139 //if (SetHotspotIpConfig() != WIFI_SUCCESS) {
140 // return ERROR_WIFI_UNKNOWN;
141 //}
地址:device/hisilicon/hispark_pegasus/hi3861_adapter/hals/communication/wifi_lite/wifiservice/source/wifi_device.c
DispatchConnectEvent函数下 屏蔽StaSetWifiNetConfig相关代码行
239 //StaSetWifiNetConfig(HI_WIFI_EVT_CONNECTED);
260 //StaSetWifiNetConfig(HI_WIFI_EVT_DISCONNECTED);
有了楼主的工具和教程,小车跑通容易多了