Hi3861开发-Hello world +点亮LED

一、Helloworld+点亮LED

1.LED工作原理

LED (Light Emitting Diode) , 发光二极管, 是一种能够将电能转化为可见光的固态的半导体器件, 它可以直接把电转化为光。LED的心脏是一个半导体的晶片,晶片的一端附在一 个支架上,一 端是负极,另一端连接电源的正极,使整个晶片被环氧树脂封装起来。半导体晶片由两部分组成一部分是P型半导体,在它里面空穴占主导地位,另一端是N型半导体,在这边主要是电子。但这两种半导体连接起来的时候,它们之间就形成一个P-N结。 当电流通过导线作用于这个晶片的时候,电子就会被推向P区,在P区里电子跟空穴复合,然后就会以光子的形式发出能量,这就是L ED灯发光的原理。而光的波长也就是光的颜色,是由形成P-N结的材料决定的。Hi3861开发板L ED相关原理
图如图所示
在这里插入图片描述

在编写代码过程中其实和STM32编写非常相像,对于开发过STM32的小伙伴来说相对更加容易上手。

2.代码段

//helloworld+LED
#include <stdio.h>
#include "ohos_init.h"
#include <string.h>

#include <unistd.h>
#include "wifiiot_gpio.h"
#include "wifiiot_gpio_ex.h"

void Hello_World(void)
{
    printf("Hello,i am led!!!\r\n");
    GpioInit();
	//使能
    IoSetFunc(WIFI_IOT_IO_NAME_GPIO_6,WIFI_IOT_IO_FUNC_GPIO_6_GPIO); 
    //工作模式
    GpioSetDir(WIFI_IOT_IO_NAME_GPIO_6,WIFI_IOT_GPIO_DIR_OUT);
    //引脚输出模式
    GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_6,0);
    while(true)
    {
     GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_6,1);
     sleep(1);
     printf("-----------------------闪烁------------------------");
     GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_6,0);
     sleep(1);
     }
}
//APP_FEATURE_INIT(LED);//启动任务
APP_FEATURE_INIT(Hello_World);//启动任务

3.配置段

//applications/sample/wifi-iot/app/1.0_Hello_World文件夹build.gn
static_library("hello_world") {
    sources = [
        "hello_world.c"
    ]

    include_dirs = [
        "//utils/native/lite/include",
        "//base/iot_hardware/interfaces/kits/wifiiot_lite",
    ]
}
//applications/sample/wifi-iot/app/BUILD.gn
import("//build/lite/config/component/lite_component.gni")

lite_component("app") {
    features = [
        "1.0_Hello_World:hello_world",       #不要忘记 ,]
}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

芯片烧毁大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值