OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁 精华

HUAWEI_Engineer
发布于 2021-10-26 16:46
浏览
0收藏

1.准备win10电脑
2.安装乌班图,
3.获取open Harmony源码
4.获取源码指令:1.hpm init -t defalut
2. hpm i @bearpi/bearpi_hm_nano
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
5.等待源码下载完成。
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
6.编译源码指令hpm dist 如果用git clone获取的源码的话,编译指令为python
7.用RaiDrive工具创建一个虚拟磁盘。
8.用vscode打开
9.在sample目录下创建一个新的文件夹为app,并在app文件夹下创建Hello.c文件和BUILD.gn文件
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
10.在Hello.c文件里编写代码
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区

#include <stdio.h>
#include "ohos_init.h"
void Hello(void)
{
printf("Hello openHarmony!\r\n");
}
APP_FEATURE_INIT(Hello);//APP_FEATURE_INIT是包含在头文件#include "ohos_init.h"中的系统入口函数。

11.编写BUILD.gn文件
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区

static_library("app") {
sources = [
"Hello.c"
]
include_dirs = [
"//utils/native/lite/include"
]
}


12.在sample目录下的BUILD.gn下添加"app:app"

13.在虚拟机中编译 指令为hpm dist
14.等待编译完成!
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
15.出现BUILD SUCCESS 后代码编译完成,生成bin文件
16.使用Hiburn工具烧录到开发板当中
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
17.在串口工具查看打印信息:
OpenHarmony基于BearPi_Nano打印Hello open Harmony-Led点亮闪烁-鸿蒙开发者社区
18.出现Hello openHarmony字样,成功入门。

点亮LED和闪烁
1.从上面第九步开始
2.代码如下

#include <stdio.h>
#include <unistd.h>
#include "ohos_init.h"
#include "wifiiot_gpio.h"
#include "wifiiot_gpio_ex.h"
void Led_Sample(void)
{
GpioInit(); //初始化GPIO
IoSetFunc(WIFI_IOT_IO_NAME_GPIO_2, WIFI_IOT_IO_FUNC_GPIO_2_GPIO);//设置GPIO_2的复用功能为普通GPIO
GpioSetDir(WIFI_IOT_IO_NAME_GPIO_2, WIFI_IOT_GPIO_DIR_OUT);//设置GPIO_2为输出模式
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_2,1);//设置GPIO_2输出高电平点亮LED灯
}
APP_FEATURE_INIT(Led_Sample);

3.BUILD.gn代码

static_library("myled") {
sources = [
"led_example.c"
]
include_dirs = [
"//utils/native/lite/include",
"//base/iot_hardware/interfaces/kits/wifiiot_lite"
]
}

4.led闪烁代码

#include "ohos_init.h"
#include "unistd.h"
#include "wifiiot_gpio.h"
#include "wifiiot_gpio_ex.h"
void led_example(void)
{
GpioInit();
IoSetFunc(WIFI_IOT_IO_NAME_GPIO_2,WIFI_IOT_IO_FUNC_GPIO_2_GPIO);
GpioSetDir(WIFI_IOT_IO_NAME_GPIO_2,WIFI_IOT_GPIO_DIR_OUT);
for(int i = 0; i < 10; i++)
{
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_2,1);
usleep(1000000);
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_2,0);
usleep(1000000);
}
GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_2,1);
}
APP_FEATURE_INIT(led_example);


总结:帮助对open Harmony感兴趣的开发者快速入门

具体步骤可参考主页HarmongOS 2.0 全场景应用未来由你来定义!文章

openHarmony.rar 466.91K 16次下载
已于2021-10-27 10:09:43修改
4
收藏
回复
举报
回复
    相关推荐