Wi-Fi IoT智能家居套之拿到设备以后,我们要怎么玩? 精华
我们拿到的设备,是一个套件,各个零件单独放置的,那我们需要怎么玩呢?
首先,当然是先要组装起来,组装起来以后,看看设备是否正常,再真正用起来:
• 能玩什么:
– 基础的,是能控制LED灯、点亮LED显示屏;
– 如果玩得高级一点,还可以通过APP来控制LED,以及控制家里的灯;
要做到上面的这些,我们就需要开发一些程序,然后让它们在设备上运行,完成对应的功能,并且进行一定的调试,看看是否运行正常。
要运行这些程序,通常需要先将代码进行编译,然后把它烧录到设备上面,或者存储到设备上以便运行。
而要完成开发、编译、烧录工作,我们有需要对应的软件环境来完成对应的工作。
下面,我们先对每个步骤进行一些基础的了解:
• 安装:
这个简单,每一个部件都有介绍视频,按照视频安装即可,难度不大,细心就成。
• 测试设备:
设备拿到后,正常安装了,上电后,设备的LED会点亮,LED屏幕能显示,我们还可以通过串口连接设备,来检查输出信息是否正常。
• 环境搭建:
– 搭建开发环境:
主要的开发环境,在Windows系统下面;不过在其他的系统下面,我们也还是可以开发的。
Window的开发环境,只是把烧录和调试环境给集成到了一起,方便烧录和调试。
但是烧录,可以借助华为的HiBurn来进行,调试,可以借助串口工具来查看输出;
所以就算没有集成开发环境,也可以也可以进行烧录,并做基本的调试。
常见的开发环境如下:
• Windows系统:
– 全套环境:VSCode+ DevEco Device Tools插件,以及其他需要的软件
– 纯开发环境:VSCode即可
• MacOS系统:
– 开发环境:VSCode即可
– 搭建烧录环境:
因为当前烧录环境,主要是在Windows系统下的,所以我们通常需要在Windows环境进行烧录。
根据开发环境的不同,主要分为以下几种:
• Windows系统:
– 全套开发环境:自带烧录环境,无需额外配置
– 纯开发环境:使用HiBurn烧录
• MacOS系统:使用Wine或者CrossOver提供Windows环境,使用HiBurn烧录
– 搭建编译环境:
目前的编译环境,是在Linux环境运行的,所以我们需要一个Linux的环境,来完成编译工作。
只要是符合要求,能够正常运行编译环境的Linux,都可以拿来使用,通常我们使用:
• Linux真机:Ubuntu20、CentOS7均可
• Linux虚拟机:VmWare、VirtualBox安装Ubuntu20、CentOS7均可
• Docker中的Linux:类似虚拟机环境,但是所需要的系统资源更小,一般以ubuntu20为好
• WSL:Windows10内置的Linux子系统
我们推荐使用Docker,能够以最快的速度,最小的代价,运行起来编译环境。
需要注意的是,如果不是在编译环境所在的Linux系统上面进行开发,则通常需要将编译目录和开发环境的代码目录关联起来,以便开发的代码,马上可以进行编 译,通常有下面的办法:
• 虚拟机共享:
– VMWare、VirtualBox、Docker、WSL均可设置,是虚拟机环境下最好的方式
• 网上邻居共享:
– 方便共享,但是容易出问题
• sftp共享:
– 在开发机上面,通过VSCode的sftp插件,可以连接到Linux环境上,编辑文件和代码,以及拷贝文件
– 通过WinSCP软件,也可以直接在Windows上面链接Linux环境传输文件
– 推荐环境方案:
经过反复测试和挑选,力求让初学者能够快速上手,在轻松愉悦的心情下开始学习,我们推荐的开发、编译、烧录环境如下:
• Windows系统:
– 最简化方案:
• 开发:VSCode
• 烧录:HiBurn
• 编译:Docker无忧包
• MacOS系统:
– 最简化方案:
• 开发:VSCode
• 烧录:CrossOver-HiBurn
• 编译:Docker无忧包
以上方案均经过验证,包可用,可以放心使用!!!
• 开发应用程序:
根据手头对应设备,参考鸿蒙设备官方网址,即可开始开发;你放心,初始开发比较简单的,第一个第二个基础程序,很快就能完成,你马上就会觉得不尽兴,想要深入学习的。
• 编译:
开发完成之后,需要编译代码,以检验开发的代码是否正确,及准备烧录镜像文件
• 烧录:
通过烧录工具,我们得以将编译后的镜像文件(.img或者.bin)写到设备的emmc存储中,以便运行
• 调试:
通常通过串口进行交互,查看对应的信息,发送对应的指令,执行相关的程序等;
更进一步,需要使用JATG连接和JLink进行调试,属于高级话题了,后面有时间在讲。
Wi-Fi IoT智能家居套件初学者入门指导系列更多内容请点击主贴:https://harmonyos.51cto.com/posts/1501
请问docker无忧包哪里下载?
这种方式请问测试过吗?我用了不行,好像和共享目录的分区格式有关系。会导致编译时出各种错误。