編輯語:
芯片開放社區(OCC)面向廣大開發者推出應用實戰系列內容,通過分享開發者實戰開發案例,總結應用開發經驗,梳理開發中的常見問題及解決方案,為后續參與的開發者提供更多參考與借鑒。
本文是關于開發者 zhanghui基于BL606P-DVK開發板實戰開發的系列文章中的第二篇,主要介紹了GPIO驅動RGB燈,后面還會持續更新該開發者的測評內容,敬請期待!
上篇編譯開發板的例程后,不停的重啟。下面是創建新的例程來測試下板卡上的RGBLED燈,來熟悉GPIO的使用。
01創建項目例程
1.1 在welcome界面,選擇新建工程
1.2 選擇板卡的例程,創建工程
1.3 填寫工程名,下載方案
1.4 創建的項目
02程序
在上面創建的工程上修改要測試的例程
RGB跳線對應的端口被JTAG占用,下面使用GPIO0~GPIO3來驅動。
JTAG占用的引腳。
使用下面引腳來驅動RGB
2.2 led.c
#include#include #include #include "app_main.h" #include #include #include gpio_dev_t ledr = { GPIO_PIN_0, OUTPUT_PUSH_PULL, NULL }; gpio_dev_t ledg= { GPIO_PIN_1, OUTPUT_PUSH_PULL, NULL }; gpio_dev_t ledb = { GPIO_PIN_2, OUTPUT_PUSH_PULL, NULL }; void init_led(void) { csi_pin_set_mux( GPIO_PIN_0, PIN_FUNC_GPIO); csi_pin_set_mux( GPIO_PIN_1, PIN_FUNC_GPIO); csi_pin_set_mux( GPIO_PIN_2, PIN_FUNC_GPIO); //gpio0 = { 0, OUTPUT_PUSH_PULL, NULL }; //led0.port = GPIO_PIN_0; hal_gpio_init(&ledr); hal_gpio_init(&ledg); hal_gpio_init(&ledb); hal_gpio_output_low(&ledr); hal_gpio_output_low(&ledg); hal_gpio_output_low(&ledb); } void set_ledr(void) { hal_gpio_output_high(&ledr); } void set_ledg(void) { hal_gpio_output_high(&ledg); } void set_ledb(void) { hal_gpio_output_high(&ledb); } void clr_ledr(void) { hal_gpio_output_low(&ledr); } void clr_ledg(void) { hal_gpio_output_low(&ledg); } void clr_ledb(void) { hal_gpio_output_low(&ledb); } void tog_ledr(void) { hal_gpio_output_toggle(&ledr); } void tog_ledg(void) { hal_gpio_output_toggle(&ledg); } void tog_ledb(void) { hal_gpio_output_toggle(&ledb); }
2.3 led.h
#ifndef __LED_H__ #define __LED_H__ void init_led(void); void set_ledr(void); void set_ledg(void); void set_ledb(void); void clr_ledr(void); void clr_ledg(void); void clr_ledb(void); void tog_ledr(void); void tog_ledg(void); void tog_ledb(void); #endif
2.4 main.c
/* * Copyright (C) 2015-2020 Alibaba Group Holding Limited */ #include#include #include #include "app_main.h" #include #include "led.h" int main(int argc, char *argv[]) { int i=0; board_yoc_init(); init_led(); printf(" app start core clock %d........ ", soc_get_cur_cpu_freq()); //codec_output_init(); //codec_input_init(); //codec_loop_init(); while(1) { set_ledr(); clr_ledg(); clr_ledb(); aos_msleep(500); clr_ledr(); set_ledg(); clr_ledb(); aos_msleep(500); clr_ledr(); clr_ledg(); set_ledb(); aos_msleep(500); clr_ledr(); clr_ledg(); clr_ledb(); aos_msleep(500); } return 0; }
03程序運行
RGB三色LED燈輪詢點亮
-
芯片
+關注
關注
455文章
50714瀏覽量
423142 -
RGB
+關注
關注
4文章
798瀏覽量
58461 -
音視頻
+關注
關注
4文章
471瀏覽量
29872 -
開發板
+關注
關注
25文章
5032瀏覽量
97372 -
GPIO
+關注
關注
16文章
1204瀏覽量
52052
原文標題:應用速遞 | 博流BL606P音視頻開發板:(2)GPIO驅動RGB燈
文章出處:【微信號:芯片開放社區,微信公眾號:芯片開放社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論