【学习打卡】Day3 小熊派Nano的护花使者项目搭建&烧录后运行 精华
一、目的
- 自动浇花,先让自己对一个工程项目有一个直观认识
- 昨晚公司服务器机房空调坏了,热保护关机,为了给公司服务器做物联网温度监控报警,先摸索一下
- 踏出鸿蒙设备开发持续学习的第一步
昨晚没保存成功,故从头开始写,不过现在简书草稿中备份一下,防止又崩了,一个Tips是不要直接复制图片,而是按上传图片方式传图(杨总的建议)
二、环境
- Win10, 安装好VScode, Windows Ubuntu和Centos7子系统, 其中小熊派Nano的编译工具链已经在Ubuntu中配置好
- 之前为了学C/C++,已经安装并配置好MingGW
三、设备组装
四、配置Ubuntu烧录工具链(略)
之所以不用VScode自带的烧录工具,是因为小熊派Nano暂时不支持。想想也对,现在鸿蒙IOT设备端的更新速度特别快,适配了以后过段时间又得重新适配,而Ubuntu上进行交叉编译,相对而言可以以不变应万变,代价就是配置比较折腾。
参考教程:https://www.bilibili.com/video/BV1tv411b7SA?p=3
再根据教程: https://gitee.com/openharmony-sig/vendor_oh_fun/blob/master/bearpi-hm_nano-oh_flower/01_操作文档/护花使者使用手册.md:补一个llvm
tar -vxf llvm-linux-9.0.0-36191.tar -C ~/
在~/.bashrc最后写上:
export PATH=~/gn:$PATH
export PATH=~/ninja:$PATH
export PATH=~/gcc_riscv32/bin:$PATH
export PATH=~/llvm/bin:$PATH
五、DevEco Device Tool插件,及其工具链安装(Windows系统)
教程:https://device.harmonyos.com/cn/docs/ide/user-guides/install_windows-0000001050164976
5.1 安装Python3(略)
这里有个坑,必须是Pyhon3.7.4~3.8的版本,且不能是Anaconda的版本(据说后面会支持),所以这里我要重新装Python3.8, 这个我看了报错日志,然后去官网找到了FAQ。
5.2 安装VScode(略)
5.3 安装node.js(略)
5.4 安装hpm
npm update -g @ohos/hpm-cli
npm config set registry https://repo.huaweicloud.com/repository/npm/ #换源 华为云镜像源
npm install -g @ohos/hpm-cli #安装最新版本hpm
hpm -V #检查版本 1.3.0
5.4 安装DevEco Device Tool插件
- 先在VScode扩展中安装C/C++扩展和CodeLLDB扩展
CodeLLDB下载太慢了,后面用迅雷把下载链接中的codelldb-x86_64-windows.vsix下载下来,然后在
扩展
–“...
”—从vsix安装
,安装完成。
- 下载并DevEco Device Tool
https://device.harmonyos.com/cn/ide
我下的是:devicetool-windows-tool-2.2.0.0
六、编译源代码(略)
克隆源码:
git clone https://gitee.com/openharmony-sig/vendor_oh_fun.git
hpm dist
这里有个坑:要将00_代码
改名换成00_code
, https://gitee.com/openharmony-sig/vendor_oh_fun/issues/I3W6X4?from=project-issue
还要:
- 运行如下命令安装hb:
python3 -m pip install --user ohos-build
vim ~/.bashrc
# 最后一行加上:export PATH=~/.local/bin:$PATH
source ~/.bashrc
编译成功!
已经在Ubuntu Windows 子系统(WSL)中配置好编译工具链
riscv32-unknown-elf-gcc -v
hpm dist
七、代码烧录程序到开发板
7.1 安装驱动
- 通过TypeC数据线,把电脑与BearPi-HM Nano连接
- 点击安装“02_USB驱动“文件夹下的
CH341SER.EXE
文件
7.2 查看串口信息,用于后续烧录代码及打印调试日志
知道自己串口是CH340 COM3
7.3 配置好VScode的烧录Tools环境
教程:https://device.harmonyos.com/cn/docs/ide/user-guides/bearpi-hm-nano-upload-0000001115604076
VScode打开编译好得二进制文件存放的目录
然后配置好烧录串口
配置路径好后,点击保存,后点击打开
烧录方法1:VScode DevEco Device Tool
,点击upload, 然后按下开发板的复位按钮
这里有可能一开始会出不来任务栏里upload,实在不行就重启电脑重新打开项目就有了。
烧录方法2:Hiburn
,点击connect后,再按下复位按钮即可
记得再点下dissconnect!!!
显示SUCCESS表示烧录成功,再按下板子上的复位按钮reset键运行程序
八、连接设备
8.1 配置IAM账号和密码,已有华为云账号
8.2 配置护花使者小程序
8.3 连接手机和开发板
8.4 调试设备
按一下开发板的复位按键,等待开发板上的LED灯常亮后,在小程序界面下拉刷新,等待设备上线,设备上线后点击设备,打开设备详情界面,即可查看当前绿植的土壤湿度以及空气的温湿度,点击浇水按钮即可远程控制设备浇水。
总结
1.坑比较多,尤其是配置各种环境、账号的时候
2.没有自动监测土壤干湿度后自动浇水的逻辑,需要自己写,或者自己手动加水
3.这一个项目还是很全面、扩展性很强的项目,可以好好挖掘和迁移到其他场景中去
超级详细,期待下次到时候分享检测服务器温度的hhh
学习打卡都第3天了,666
害,看了一下源码,难度级别已经不是我以前玩Arduino简单一个程序的水平了,里面项目文件分工很严密,然后居然用到寄存器的宏和各种栈操作。。。。我的C还没学到那么高级呢,但是加个函数已经还行吧,先试试
还是在社区有人监督着,学习不会懒惰,社区和星巴克作用类似,都是学习的好地方hhh