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
软硬件平台
![04-13.jpg 04-13.jpg](data/attachment/forum/202312/10/091953yj1zjy6o7jpce487.jpg)
-
搭建环境
搭建环境这一波,拉新活动基本上所有人的搭建过了,基本上只要make成功就ok了,上面的博文也提供了教程就别说了。接下来的关键就是找sdk.这是开发最重要的东西。
![04-01.jpg 04-01.jpg](data/attachment/forum/202312/10/092002d8o4yv1svcbhv88i.jpg)
-
选择例程
在Ai-M6X-SDK中找到examples找到gpio外设的文件,examples提供了丰富的开发案例,可以学习。
![04-02.jpg 04-02.jpg](data/attachment/forum/202312/10/092334mn73wojlgwlfffff.jpg)
![04-03.jpg 04-03.jpg](data/attachment/forum/202312/10/092351yhlv4wc4ztencz6z.jpg)
![04-04.jpg 04-04.jpg](data/attachment/forum/202312/10/092408j2prx20dfuareh8d.jpg)
![04-05.jpg 04-05.jpg](data/attachment/forum/202312/10/092423yy344zxw10bau7jy.jpg)
-
编写代码
把gpio_input_output复制出来一份,命名为gpio_input_output_rgb,当然你可以选择直接用给的例程,不需要重新建立,我这个只是为了更清晰一点。
![04-06.jpg 04-06.jpg](data/attachment/forum/202312/10/092440pxariffzxirptfav.jpg)
修改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[i]);
bflb_mtimer_delay_ms(200);
bflb_gpio_reset(gpio, gpio_group[i]);
bflb_mtimer_delay_ms(200);
}
bflb_gpio_set(gpio, gpio_group[i]);
bflb_mtimer_delay_ms(500);
bflb_gpio_reset(gpio, gpio_group[i]);
i = (i + 1) % 3;
}
}
-
下载代码
通过type-c数据线连接电脑,查看设备管理器,查看端口。因为板载了ch340芯片,不需要其他工具。
打开终端软件,输入命令 make clean,先清除之前可能编译出现的build,之后重新make
![04-09.jpg 04-09.jpg](data/attachment/forum/202312/10/092111idrtupekpedn8udm.jpg)
准备下载代码。先按住IO2这个按键进入烧录代码模式,这个要一直按着。之后按下EN按键,松开,然后命令行输入make flash COMX=COM16,进入烧录。
![04-11.jpg 04-11.jpg](data/attachment/forum/202312/10/092129kq9z9mmbgqqi3d7b.jpg) 下载成功后,按下en进行复位就可以看到rgb灯闪烁了。
-
观察现象
![04-14.jpg 04-14.jpg](data/attachment/forum/202312/10/092249sez2pe3pz8ooaer0.jpg)
|