Windows第一次上手鸿蒙周边
端云一体所需装备
很重要:C/D/E/F盘要有二三十G的可用空间!
硬件:华为鸿蒙实验箱(基础版)=====》飞机板+核心板+环境监测板
软件:Visual Studio Code写代码 + 终端编译 + Hiburn烧录到开发板 + MobaXterm +(CH341SER串口驱动),
要注册Gitee账号并绑定邮箱,
mqtt .fx模拟设备上报数据到华为云物联网平台
VScode插件:汉化、WSL、CMake、CMake Tools、CodeGeeX、
App UI设计:DevEco Studio + 模拟器
devecostudio-windows-5.0.5.315大概2.4Ghttps://developer.huawei.com/consumer/cn/download/
云端:注册华为云,华为云-设备接入服务IoTDA
实用小工具:uTools
0.环境搭建 for Windows(3个任务需要半天时间)
搭建HiSpark hi3861开发板的OpenHarmony 3.2 Release的南向系统开发环境。
任务一:搭建WSL2环境,安装Ubuntu。
备注:WSL的全称为 Windows Subsystem for Linux(适用于 Linux 的 Windows 子系统 2)
任务二:从Gitee仓库拉取OpenHarmony 4.1 release 轻量系统代码,下载必要的库和工具。
任务三:把编译成功的代码烧录到hi3861固件
通过build.sh脚本执行源码编译。
任务一 终极目标Ubuntu
1. 安装WSL的命令
在管理员PowerShell 或 Windows 命令提示符中输⼊此命令,然后重启计算机来安装运⾏适⽤于 Linux 的 Windows ⼦系统 (WSL) 所需的全部内容。
wsl --install
2.启⽤“适⽤于 Linux 的 Windows ⼦系统”可选功能
需要先启⽤“适⽤于 Linux 的 Windows ⼦系统”可选功能,然后才能在 Windows 上安装 Linux
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux
/all /norestart
3. 启⽤虚拟机功能
安装WSL 2 之前,必须启⽤“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使⽤此功能。 以管理员身份打开PowerShell 并运⾏:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
4. 下载 Linux 内核更新包
.msi
,出现如下安装界面,点击
next
进行安装,直到出现安装成功界面。
(双击以运⾏- 系统将提示你提供提升的权限,选择“是”以批准此安装。)
5. 将 WSL 2 设置为默认版本
wsl --set-default-version 2
6. 安装所选的 Linux 分发
7. 设置Ubuntu⽤户名和密码以及root⽤户密码,切换Ubuntu下载源为华为云镜像
点击图中的“打开”,设置Ubuntu用户名和密码以及root用户密码。
接下来就是在子系统Ubuntu20.04上安装桌面环境,由于Ubuntu默认的软件源在国外,有时候后可能会造成下载软件卡顿,这里我们更换为国内的华为云源,其他国内源亦可。
sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i "s@http://.*archive.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
sudo sed -i "s@http://.*security.ubuntu.com@http://repo.huaweicloud.com@g" /etc/apt/sources.list
sudo apt-get update
8. 在windows下的vscode⾥⾯安装WSL插件和汉化插件
补充:笔记本电脑端打开文件夹,选择openharmony文件夹即可。
9. 将Ubuntu Shell 环境修改为bash
sudo dpkg-reconfigure dash
执⾏ ls -l /bin/sh 命令,列出 /bin/sh
文件的详细信息, 它显示文件类型、权限、拥有者、大小以及最后修改时间。
ls -l /bin/sh
10. 安装git、git-lfs、ninja-build、curl、python3-pip
sudo apt-get install git git-lfs ninja-build curl python3-pip
11. 安装Gitee码云的repo⼯具
sudo curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 -o /usr/local/bin/repo
sudo chmod a+x /usr/local/bin/repo
sudo pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
12. 设置git全局⽤户名和电⼦邮件地址
在Gitee个人主页查看自己的用户名和邮箱地址,替换双引号中的内容
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store
13.安装后才发现需要迁移至F盘(不是必选项,个人原因)
任务二 拉取源码 OpenHarmony
1. 下载OpenHarmony-v4.1-Release版本hi3861源码
mkdir openharmony
cd openharmony
sudo ln -sf /usr/bin/python3 /usr/bin/python
repo init -u https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v4.1-Release -m chipsets/hispark_pegasus.xml -g ohos:mini
2.执行repo sync -c
执行最后报错则重新执行repo sync -c,直到提示 repo sync has finished successfully。
repo sync -c
执行repo forall -c 'git lfs pull'
repo forall -c 'git lfs pull'
3. 安装依赖库
此步骤会安装⼀系列编译需要的依赖库。
./build/build_scripts/env_setup.sh
source ~/.bashrc
4. 下载编译⼯具
sudo bash build/prebuilts_download.sh
5. 下载需要的python库
pip install ecdsa -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install scons -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install pycryptodome -i https://pypi.tuna.tsinghua.edu.cn/simple
6. 配置riscv编译
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C /opt/
vim ~/.bashrc
先写 i 表示插入(行前用 i
,行后用 a
),拉到最下面,插入语句,Shift+冒号wq,表示保存并退出。
source ~/.bashrc
riscv32-unknown-elf-gcc -v
7. 开始编译 build.sh
./build.sh --product-name wifiiot_hispark_pegasus --ccache --no-prebuilt-sdk
任务三 写第一个程序 hello world
1.模板
2.照猫画虎
任务四 编译+烧录
编译
通过build.sh脚本执行源码编译,同前面步骤。
./build.sh --product-name wifiiot_hispark_pegasus --ccache --no-prebuilt-sdk
编译完成之后的镜像⽂件OHOS_Image.bin所在位置:
\\wsl.localhost\Ubuntu-20.04\root\openharmony\out\hispark_pegasus\wifiiot_hispark_pegasus
这个OHOS_Image.bin就是烧录⽂件,它所在的路径根据⾃⼰ubuntu的实际代码路径来。
烧录
-
打开HiBurn.exe,设置200 0000速率,选择串口号,选择编译生成的*.bin文件,勾选Auto burn,然后连接Connect,等待烧录完成后,按下核心板复位键运行。
2. 打开MobaXterm ,设置端口号和串口波特率115200
3. MobaXterm成功获得Hello world的输出
3. 初次尝试练手的案例里MobaXterm可以成功获取温湿度数据(Session--Serial)
任务五 华为云及IoTDA的使用
1.登录华为云
打开华为云官网地址https://www.huaweicloud.com/,然后点击右上角登录,进入IOT控制台
2.创建产品
3.编辑产品自定义模型(服务ID+属性+命令)
如果该产品模型还支持下发命令进行控制,那么还可以在服务下添加命令。
4.注册设备
设备注册完成之后,会显示的是“未激活”状态,待后期设备连接上物联网平台之后,就自动激活了,后续不会再有“未激活”状态,只会是“离线”或者“在线”。
5.MQTT接入地址
6.预制AMQP接入凭证
7.查看MQTT中的TOPIC
8.生成MQTT连接的必要参数(ClientId/Username/Password)
在进行mqtt连接物联网平台的时候,除了mqtt接入地址(之前已经获取到)之外,还需要ClientId,Username和Password,于是通过下面工具可以生成这3个关键参数,
工具地址:Huaweicloud IoTDA Mqtt ClientId Generator
打开工具之后,输入DeviceId(设备ID)和DeviceSecret(设备密钥,在之前创建设备的时候生成并下载保存的),然后点击“Generate”按钮即可。
9.通过mqtt .fx连接物联网平台进行测试
连接成功后,物联网平台,可以看到该设备显示“在线”状态。
10.mqtt .fx模拟设备上报数据到物联网平台
{
"services": [{
"service_id": "ColorLed",
"properties": {
"LightStatus": "OFF"
}
}
]
}
该数据中的services,service_id和properties是关键字,其他的为自定义模型中的数据可根据实际情况进行填充。填写完成之后点击“Publish”按钮发送数据即可
发送完成之后,可以在物联网平台的设备详情中实时查看到刚上报过来的数据
任务六 温湿度数据上传华为云
代码:mqtt_temp-humi_sensor1
PARAM_HOTSPOT_SSID和PARAM_HOTSPOT_PSK,修改为自己手机的热点名称和密码
修改五个参数:HOST_ADDR 用于标识MQTT服务器IP地址、DEVICE_ID用于标识设备ID、MQTT_CLIENT_ID用于标识用于MQTT连接的clientid、MQTT_USERNAME用于标识用于MQTT连接的username、MQTT_PASSWORD用于标识用于MQTT连接的password。
修改服务名和属性
修改两个config.mk文件里的内容,使其=y
输入命令编译成功!(先输入 rm -rf out 删除out文件,然后输入编译命令)
烧录成功后,开发板按下复位键,华为云端获得开发板端AHT20实时采集到的温湿度数据。
未来 仓颉编程语言 cj
仓颉编程语言是一款面向全场景智能的新一代编程语言,主打原生智能化、天生全场景、高性能、强安全。主要应用于鸿蒙原生应用及服务应用等场景中,为开发者提供良好的编程体验。
仓颉编程语言官网https://cangjie-lang.cn/
原文地址:https://blog.csdn.net/luyibing2017/article/details/145249847
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!