本帖最后由 林小东东东 于 2024-5-2 14:33 编辑
一、环境配置篇 //
也可以方便点看这个(【新提醒】[更新帖]AiPiEasyStart一键搭建开发环境工具 - 小安派S1&M61教程合集 - 物联网开发者社区-安信可论坛 - Powered by Discuz! (ai-thinker.com))
注意事项: 如果基础不好,像我一样粗心的同学,最好一步一步去配置,第一次使用Git,感觉很好玩。 我的教训:我的粗心大意导致我多花了近一小时的时间。我在看贴搭建环境的时候,在M61 SDK中拉取子模块,需要在两个不同的路径下拉取两次,我大意了,只拉了一次,导致后面的环境变量我找不到对应的路径。 验证环境搭建:
如果有问题就去看一下自己的环境变量有没有错误。
编译天气例程是比较简单的,注意:VScode用管理员身份打开比较好。
成功编译,代表环境已经搭建好了啊!芜湖~
二、使用例程点灯:
我的点灯步骤:
新建project,我们直接复制有的project即可,看图操作,注意看路径!!
我们使用vscod打开
点亮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();
- printf("1111111111111111111111111111");
- 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++) {
- printf("111111");
- bflb_gpio_set(gpio, gpio_group[i]);
- bflb_mtimer_delay_ms(200);
- printf("0000000");
- 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;
- }
- }
复制代码
编译:
有些会在这一步报错,下面有解决方法,如果是其他的错误可以看看有哪一步不同。 我把错误贴出来了,方便其他小伙伴搜索到这篇文章 fatal error: lwip/dns.h: No such file ordirectory 11 | #include"lwip/dns.h"
注释完记得保存
解决完报错我们继续 编译完成我们就可以烧录了,这里我们烧录也是使用命令来进行烧录的,所以我们先要知道我们开发板在电脑上的端口号 使用命令:make flash COMX=COMxx 注意COMxx 中的xx换成我们对应的端口号。 比如我是COM10,那我的命令是:make flash COMX=COM10
烧录前,我们需要把开发板调到烧录模式,我们先按下开发板上的IO2按键不松手,在按下EN按键,表示进入烧录模式了,可以松手。 烧录完成,我的这里报错,我也求助过大佬,添加了串口打印,没问题 ,不影响使用,顺便在这里再次请教一下,怎么解决这个问题。 期待大佬的回答
既然选择远方,当不负青春,砥砺前行
|