【OpenHarmony快速入门】使用VSCode编写程序源码以及基础设置
  noedAHRF1iby 2023年11月13日 19 0

前言

本文介绍了在VScode中编写程序源码,如何将源码编译成二进制文件,宏命令,以及一些爆红问题的处理,IntelliSense设置,屏蔽内置的 test suite方法

1.编写程序源码

1.准备开发套件

_1476361649__15687ea4184dfb84bb137bdb18c1a399_1986918176_IMG_20230703_202708__0wifi_0.jpg

2.建立目录

ps1:获取虚拟机ip地址确保虚拟机处于开机状态 ps2:如何获取虚拟机ip地址,下载编译源码可以看我的另一篇文章 https://ost.51cto.com/posts/24912 打开VScode,点击左上角file,点击open folder,输入两个\ 和虚拟机ip地址 image.png 双击home文件夹,进去到1.1.3根目录,选择1.1.1根目录文件夹打开 image.png 打开之后... image.png

3.编写源码

打开 applications\sample\wifi-iot\app\startup 点击左上角新建文件图标 新建hello.c文件 image.png 下面编写C程序代码,保存文件 ps1:其中 #include "ohos_init.h" 为OpenHarmony特定的头文件 ps2:SYS_RUN为ohos_init.h头文件定义的一个宏 ps3:这里爆红先不急 image.png

4.编写编译脚本

ps:千万要注意有两个BUILD.gn image.png 先打开 applications\sample\wifi-iot\app\startup\BUILD.gn 需要把helloworld做成静态库,把source_set改成static_library image.png image.png 定义库名称,静态库需要编译的源文件,include目录,保存文件 image.png 再打开 applications\sample\wifi-iot\app\BUILD.gn ps:features字段用于指定业务模块,使目标模块参与编译,保存文件 image.png

2.将源码编译成二进制文件

打开虚拟机 进入 OpenHarmony 源码根目录,选中1.1.3,鼠标右击选择在终端打开 image.png 输入

hb build -f

查看编译结果,编译成功完成 image.png

3.将二进制文件烧录到开发板

编译生成的固件位置

两个\ 虚拟机 IP\home\lushikai\openharmony\1.1.3\out\hispark_pegasus
wifiiot_hispark_pegasus\Hi3861_wifiiot_app_allinone.bin 首先,连接开发板,打开HiBurn,进行初始配置 image.png 选择固件打开 image.png

烧录

ps:老方法,不会烧录可以看另一篇文章 https://ost.51cto.com/posts/24912 烧录成功,点击disconnect image.png

4.查看程序运行结果

打开MobaXterm,连接好开发板串口 image.png 按下开发板RST键,开始运行 image.png 查看输出 image.png

5.OpenHarmony启动的8个阶段

宏命令

core: CORE_INIT() core system service: SYS_SERVICE_INIT() core system feature: SYS_FEATURE_INIT() system startup: SYS_RUN() system service: SYSEX_SERVICE_INIT() system feature: SYSEX_FEATURE_INIT() application-layer service: APP_SERVICE_INIT() application-layer feature: APP_FEATURE_INIT()

6.VScode的IntelliSense设置

ps:有智能感知功能,自动代码补全,代码提示,代码导航,右键跳转,实时错误检查等 回到VScode,打开写好的hello.c文件,鼠标移动到爆红位置会显示错误提示 image.png 在有错误提示地方有个黄色小灯泡点击打开,点击edit includePath setting image.png 找到包含路径 image.png 添加路径

${workspaceFolder}/utils/native/lite/include

image.png ok~ image.png 建议的额外设置,完成之后保存文件 image.png ps:如果#include <stdio.h>头文件也爆红,下面介绍如何解决 image.png 打开配置文件,""输入路径 注意第二行后面别忘了加逗号 然后保存文件

${workspaceFolder}/device/hisilicon/hispark_pegasus/sdk_liteos/platform/os/Huawei_LiteOS/components/lib/libc/musl/include

image.png ok~ image.png

7.VScode解析 .gn 文件

1.安装gn.exe

PS:这一步有能力自行操作,安不安装并不影响编译 下载 gn-windows-amd64.zip 建议将 gn.exe 放到 C:\Windows\System32\ 不需要配置环境变量

2.安装GN插件 GNFormat插件

image.png

3.格式化 .gn 文件

回到start up目录下的BUILD.gn文件 image.png app目录下的BUILD.gn文件 image.png 按下 Alt+Shift+F 进行格式化

8.屏蔽内置的 test suite

ps1:test suite会影响观察程序运行结果 ps2:注意删除的还有86行的逗号 删除86-93行,保存文件,重新编译 image.png 回到虚拟机,找到1.1.3源码根目录选择在终端打开,进行全量编译

hb build -f

image.png 打开HiBurn,对重新编译的Hi3861_wifiiot_app_allinone.bin固件进行烧录 ps:烧录前先把MobaXterm关闭 image.png 打开MobaXterm,连接串口,按下RST键 可以看到串口输出日志不再包含测试输出了 image.png

9.快速查找文件和代码

按内容查找

 grep -nr xxx

按文件名查找

find . -name 'xxx'

本文作者:他们都叫我KAI

想了解更多关于开源的内容,请访问:​

​51CTO 开源基础软件社区​

​https://ost.51cto.com/#bkwz​

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
noedAHRF1iby