成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

鴻蒙 Hi3861 GPIO操作 點燈和按鍵實驗

系統
文章由鴻蒙社區產出,想要了解更多內容請前往:51CTO和華為官方戰略合作共建的鴻蒙技術社區https://harmonyos.51cto.com/#zz

[[349902]]

 想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

Hi3861也提供了相關得GPIO口操作

先看最簡單得LED燈閃爍操作

源碼結構如下:

 BUILD.gn文件內容:

  1. static_library("led_demo") { 
  2.  
  3. sources = [ 
  4.  
  5. "led_demo.c" 
  6.  
  7.  
  8. include_dirs = [ 
  9.  
  10. "//utils/native/lite/include"
  11.  
  12. "//kernel/liteos_m/components/cmsis/2.0"
  13.  
  14. "//base/iot_hardware/interfaces/kits/wifiiot_lite" 
  15.  
  16.  

led_demo.c內容:

  1. #include <unistd.h> 
  2. #include "stdio.h" 
  3. #include "ohos_init.h" 
  4. #include "cmsis_os2.h" 
  5. #include "wifiiot_gpio.h" 
  6. #include "wifiiot_gpio_ex.h" 
  7.  
  8.  
  9. #include <hi_types_base.h> 
  10. #include <hi_i2c.h> 
  11. #include <hi_early_debug.h> 
  12. #include <hi_stdlib.h> 
  13.  
  14. void *LedTask(const char *arg) 
  15.  
  16.     (void)arg; 
  17.     while (1)  
  18.     { 
  19.             GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 0); 
  20.             usleep(300000); 
  21.             GpioSetOutputVal(WIFI_IOT_IO_NAME_GPIO_9, 1); 
  22.             usleep(300000); 
  23.     } 
  24.  
  25.     return NULL
  26.  
  27. void led_demo(void) 
  28.     osThreadAttr_t attr; 
  29.  
  30.     GpioInit(); 
  31.  
  32.     //復用引腳為 GPIO 
  33.     IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_IO_FUNC_GPIO_9_GPIO); 
  34.  
  35.     //設置為輸出 
  36.     GpioSetDir(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_GPIO_DIR_OUT); 
  37.  
  38.  
  39.      
  40.     attr.name = "LedTask"
  41.     attr.attr_bits = 0U; 
  42.     attr.cb_mem = NULL
  43.     attr.cb_size = 0U; 
  44.     attr.stack_mem = NULL
  45.     attr.stack_size = 512; 
  46.     attr.priority = 26; 
  47.  
  48.     if (osThreadNew((osThreadFunc_t)LedTask, NULL, &attr) == NULL) { 
  49.         printf("[LedExample] Falied to create LedTask!\n"); 
  50.     } 
  51.      
  52.  
  53.  
  54. //SYS_RUN(led_demo); 
  55.  
  56. void oled_test(void) 
  57.  
  58.  
  59. SYS_RUN(oled_test); 

 另外GPIO口還可以作為輸入,然后使用中斷,示例代碼如下:

這段示例代碼用的開發板上面的user按鍵。


通過查閱原理圖,我們可以看到Hi3861在type-C口附近有一個user按鈕,如圖,主要不要和復位按鈕搞錯了。user按鈕對應的是GPIO5引腳。

  1. /* gpio callback func */ 
  2. hi_void my_gpio_isr_func(hi_void *arg) 
  3.     hi_unref_param(arg); 
  4.     printf("----- gpio isr success -----\r\n"); 
  5.  
  6.  
  7. /* 設置 按鍵中斷響應 */ 
  8. hi_void my_gpio_isr_demo(hi_void) 
  9.     hi_u32 ret; 
  10.  
  11.     printf("----- gpio isr demo -----\r\n"); 
  12.  
  13.     (hi_void)hi_gpio_init(); 
  14.      
  15.     hi_io_set_func(HI_IO_NAME_GPIO_5, HI_IO_FUNC_GPIO_5_GPIO); /* uart1 rx */ 
  16.  
  17.     ret = hi_gpio_set_dir(HI_GPIO_IDX_5, HI_GPIO_DIR_IN); 
  18.     if (ret != HI_ERR_SUCCESS) { 
  19.         printf("===== ERROR ======gpio -> hi_gpio_set_dir1 ret:%d\r\n", ret); 
  20.         return
  21.     } 
  22.  
  23.     ret = hi_gpio_register_isr_function(HI_GPIO_IDX_5, HI_INT_TYPE_EDGE, 
  24.                                         HI_GPIO_EDGE_RISE_LEVEL_HIGH, my_gpio_isr_func, HI_NULL); 
  25.     if (ret != HI_ERR_SUCCESS) { 
  26.         printf("===== ERROR ======gpio -> hi_gpio_register_isr_function ret:%d\r\n", ret); 
  27.     } 

想了解更多內容,請訪問:

51CTO和華為官方合作共建的鴻蒙技術社區

https://harmonyos.51cto.com

 【編輯推薦】

 

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2020-10-14 09:41:02

Hi3861GPIO點燈

2020-10-28 10:03:43

Hi3861 GPIO點燈按鍵

2020-10-16 09:50:37

Hi3861WiFi熱點

2022-03-15 15:00:59

Hi3861Pin接口鴻蒙

2023-05-26 16:07:14

Hi3861Wifi模塊

2020-11-18 11:56:06

鴻蒙Hi3861

2020-11-23 13:09:42

HI3861

2021-02-02 15:52:17

鴻蒙HarmonyOS應用開發

2020-11-06 11:32:11

NV操作

2020-11-03 12:26:55

Hi3861

2020-11-06 10:15:16

HiBurn

2020-12-08 12:36:41

Hi3861 ADC驅動開發

2020-11-12 11:23:54

鴻蒙

2020-10-27 10:08:19

Hi3861ADC驅動

2020-12-31 12:02:15

鴻蒙Hi3861環境搭建

2021-09-16 10:03:39

鴻蒙HarmonyOS應用

2022-04-12 11:07:11

Hi3861鴻蒙操作系統

2020-11-03 11:39:22

wifi小車

2020-12-17 10:02:16

鴻蒙Hi3861開發板

2022-03-07 15:05:58

HTTPHi3861數據解析
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美亚洲激情 | 亚洲免费观看视频网站 | 久久久久久久一区 | 久久激情视频 | 成人精品福利 | 日日骚网| 免费看啪啪网站 | 久久国产视频一区 | 久久国产精品久久 | 最新国产在线 | 久久伊人亚洲 | 91精品国产91久久综合桃花 | 国产91久久久久久久免费 | 日韩国产精品一区二区三区 | 久久久亚洲一区 | 亚洲伦理自拍 | 国产午夜精品一区二区三区四区 | 亚洲精品黄色 | 性国产丰满麻豆videosex | 日本一二三区电影 | 日日做夜夜爽毛片麻豆 | 伊人网站在线观看 | 国产大学生情侣呻吟视频 | 桃花av在线 | 91久久精品国产 | 91婷婷韩国欧美一区二区 | 欧美日韩国产高清视频 | 国产一区二区三区精品久久久 | 91精品国产一区二区在线观看 | 欧美日韩成人在线 | 精品久久久久久久 | 亚洲一区二区在线免费观看 | 中文字幕国产视频 | 亚洲欧美日韩一区二区 | 国产亚洲精品久久情网 | 久久国产欧美日韩精品 | 91精品久久久久久久久 | 欧美激情一区 | 久久久综合网 | 中文字幕视频在线看 | 久久r久久 |