自学内容网 自学内容网

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

华为云-控制台-设备接入IoTDAhttps://console.huaweicloud.com/iotdm/?agencyId=55d426e5e63041df92f8b6780b82b94f®ion=cn-north-4&locale=zh-cn#/dm-portal/instance

        实用小工具: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

分发。
        参考资料: 超详细Windows10/Windows11 子系统(WSL2)安装Ubuntu20.04
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 内核更新包

        先下载最新包:适⽤于 x64 计算机的 WSL2 Linux 内核更新包
        https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
        然后运⾏下载的更新包,后缀为 .msi,出现如下安装界面,点击 next进行安装,直到出现安装成功界面。 (双击以运⾏- 系统将提示你提供提升的权限,选择“是”以批准此安装。)

5. 将 WSL 2 设置为默认版本

wsl --set-default-version 2

6. 安装所选的 Linux 分发

        打开Microsoft Store,并选择你偏好的 Linux 分发版,点击“安装”。
        编译openharmony推荐安装Ubuntu 20.04或Ubuntu 22.04

        安装好之后我们可以在计算机 开始菜单中看到Ubuntu20.04的图标。

7. 设置Ubuntu⽤户名和密码以及root⽤户密码,切换Ubuntu下载源为华为云镜像

        点击图中的“打开”,设置Ubuntu用户名和密码以及root用户密码。

      设置完成后可以在 此电脑中看到Linux,打开它可以看到Ubuntu的文件,后续与Ubuntu之间的文件操作可以从此处进行。

        接下来就是在子系统Ubuntu20.04上安装桌面环境,由于Ubuntu默认的软件源在国外,有时候后可能会造成下载软件卡顿,这里我们更换为国内的华为云源,其他国内源亦可。

        备份配置⽂件:
sudo cp -a /etc/apt/sources.list /etc/apt/sources.list.bak
        修改sources.list⽂件,将http://archive.ubuntu.com和http://security.ubuntu.com替换成
http://repo. huaweicloud .com,可以参考如下命令:
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 更新索引。
sudo apt-get update

8. 在windows下的vscode⾥⾯安装WSL插件和汉化插件

         (让VScode在Ubuntu中运行)

        打开远程窗口,选择连接到WSL

        正在打开远程窗口,需要一段时间,请耐心等待哦~

        左下角显示 WSL: Ubuntu-20.04 连接成功

        VScode中打开文件夹

        选择/home/zhangsan(Ubuntu用户名),即可在VScode中打开。
        ——这个截图是在台式机第二次安装时的截图。笔记本电脑第一次安装没有保留截图。之后的命令行操作可以直接在VScode的终端中输入执行。

        补充:笔记本电脑端打开文件夹,选择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盘(不是必选项,个人原因)

        迁移后又从第7步开始……………………

任务二 拉取源码 OpenHarmony

不可缺少任何一句命令行命令!!!

1. 下载OpenHarmony-v4.1-Release版本hi3861源码

        注意 :下载源码之前需要新建⼀个⽂件夹openharmony来存放源码,后续操作都在该⽂件夹内进⾏。
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
        下载好OpenHarmony 4.1 release 轻量系统hi3861芯⽚源码⼤约9.3G。真要命……

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编译   

        步骤如下:
        6.1 下载riscv32 gcc镜像.
        https://repo.huaweicloud.com/harmonyos/compiler/gcc_riscv32/7.3.0/linux/gcc_riscv32-
linux-7.3.0.tar.gz    下载的tar包不用解压,直接拖拽拉入VScode,之后用命令解压。

        6.2 解压:tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C /opt/
tar -xvf gcc_riscv32-linux-7.3.0.tar.gz -C /opt/
        6.3 设置路径:vim 编辑器
vim ~/.bashrc
        6.4 添加 export PATH=/opt/gcc_riscv32/bin:$PATH

        先写 i 表示插入(行前用 i ,行后用 a),拉到最下面,插入语句,Shift+冒号wq,表示保存并退出。

        6.5 source ~/.bashrc
source ~/.bashrc
        6.6 再次执⾏:riscv32-unknown-elf-gcc -v
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的实际代码路径来。

    烧录

  1. 打开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)!