|
【HarmonyOS HiSpark Wi-Fi IoT 套件试用连载】GPIO操作之LED灯闪烁,
Hi3861开发板上的LED翻转 hi3861开发板上有自带一个LED灯,这一次来简单操作hi3861开发板的GPIO口,从而控制LED灯闪烁。 从开发板原理图可知,LED灯连接的是GPIO_9,所以只需要操作GPIO_9的电平高低就可以操作LED灯的亮灭状态。 明确整个过程需要做什么了,那么就开始新建项目。 首先在app目录下新建led文件夹,然后在led文件夹下新建BUILD.gn文件,内容如下 “//utils/native/lite/include“, “//base/iot_hardware/inteRFaces/kits/wifiiot_lite“, 然后再新建led.c文件,添加以下代码: #include <unistd.h> #include “wifiiot_gpio.h“ #include “wifiiot_gpio_ex.h“ // LED灯任务处理,在此函数内循环点亮和熄灭LED灯 static void *LedTask(const char *arg) GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 0); // LED_ON GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 1); // LED_OFF static void Demo_Led(void) IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_IO_FUNC_GPIO_9_GPIO); GpioSetDir(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_GPIO_DIR_OUT); attr.priority = osPriorityNormal; // 任务优先级为常规级别 if (osThreadNew((osThreadFunc_t)LedTask, NULL, &attr) == NULL) { printf(“[Demo Led] create LedTask Failed!\r\n“); 最后一步是修改app目录下的BUILD.gn文件,让它默认执行led项目(文件夹)下的内容。 import(“//build/lite/config/component/lite_component.gni“) 修改完代码后,就输入python3 build.py wifiiot开始编译,然后通过HiBurn软件烧录到Hi3861开发板上。 实验现象:Hi3861开发板上自带的LED灯每300毫秒闪烁一次。 |
|