Skip to content

由 End 贡献,Ai-Thinker 进行整理

04-安信可小安派 Ai-M61-32S开发板从0开始点灯

参考博文

代码编译烧录 https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=43739

环境搭建 https://bbs.ai-thinker.com/forum.php?mod=viewthread&tid=520

软硬件平台

操作步骤

1
搭建环境

搭建环境 搭建环境这一波,拉新活动基本上所有人的搭建过了,基本上只要make成功就ok了,上面的博文也提供了教程就别说了。接下来的关键就是找sdk.这是开发最重要的东西。

2
选择例程

选择例程 在Ai-M6X-SDK中找到examples找到gpio外设的文件,examples提供了丰富的开发案例,可以学习。

3
编写代码

编写代码 把gpio_input_output复制出来一份,命名为gpio_input_output_rgb,当然你可以选择直接用给的例程,不需要重新建立,我这个只是为了更清晰一点。

修改cmakelist.txt,project(gpio_input_output_rgb) 编写代码,

#include "bflb_gpio.h"
#include "board.h"

struct bflb_device_s *gpio;

uint32_t gpio_group[] = {GPIO_PIN_12, GPIO_PIN_14, GPIO_PIN_15};
int main(void)
{
    board_init();

    gpio = bflb_device_get_by_name("gpio"); // get gpio device

    // set gpio pin mode
    bflb_gpio_init(gpio, GPIO_PIN_12, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);
    bflb_gpio_init(gpio, GPIO_PIN_14, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);
    bflb_gpio_init(gpio, GPIO_PIN_15, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);

    
    bflb_gpio_reset(gpio, GPIO_PIN_12);
    bflb_gpio_reset(gpio, GPIO_PIN_14);
    bflb_gpio_reset(gpio, GPIO_PIN_15);
    uint8_t i = 0;
    while (1) {
        for(uint8_t j = 0; j < 2; j++) {
            bflb_gpio_set(gpio, gpio_group);
            bflb_mtimer_delay_ms(200);
            bflb_gpio_reset(gpio, gpio_group);
            bflb_mtimer_delay_ms(200);
        }
        bflb_gpio_set(gpio, gpio_group);
        bflb_mtimer_delay_ms(500);
        bflb_gpio_reset(gpio, gpio_group);
        i = (i + 1) % 3;
    }
}
4
下载代码

下载代码 通过type-c数据线连接电脑,查看设备管理器,查看端口。因为板载了ch340芯片,不需要其他工具。 打开终端软件,输入命令 make clean,先清除之前可能编译出现的build,之后重新make 准备下载代码。先按住IO2这个按键进入烧录代码模式,这个要一直按着。之后按下EN按键,松开,然后命令行输入make flash COMX=COM16,进入烧录。 下载成功后,按下en进行复位就可以看到rgb灯闪烁了。

5
观察现象

观察现象

遇到问题?

如有其他问题,请到统一的提问与讨论区:Ai-Thinker Discussions

Released under the MIT License. Build Time 2026-09-11 14:52:23