【祖传点灯】安信可Ai-M61-32S+开发环境搭建+燃灯

[复制链接]
查看1946 | 回复9 | 2024-5-3 23:49:16 | 显示全部楼层 |阅读模式
本帖最后由 HaydenHu 于 2024-5-4 00:01 编辑

1、SDK和工具下载环节
包括SDK和工具链下载,我之前一直在用Vscode,安装过了所以这里就不详细讲它的安装了,此外git工具也是,不会的可以另搜教程

  1. git clone --recursive https://gitee.com/Ai-Thinker-Open/aithinker_Ai-M6X_SDK.git
  2. cd aithinker_Ai-M6X_SDK
  3. git clone https://gitee.com/bouffalolab/toolchain_gcc_t-head_windows.git
复制代码


运行这三行命令就能完成下载,还是挺简单的,熟悉git的朋友毫无障碍。
001.png 002.png 003.png 004.png

2、环境变量配置
win10左下角搜索框直接搜索环境变量打开环境变量配置对话框添加三个环境变量即可,具体根据自己目录不同而定。

环境变量添加
  1. D:\Users\BL\aithinker_Ai-M6X_SDK\tools\make
  2. D:\Users\BL\aithinker_Ai-M6X_SDK\tools\ninja
  3. D:\Users\BL\aithinker_Ai-M6X_SDK\toolchain_gcc_t-head_windows\bin
复制代码


006.png
打开powershell命令行测试一下是否安装成功


  1. <div>riscv64-unknown-elf-gcc -v
  2. make -v
  3. ninja --help</div>
复制代码


007.png


3、编辑程序代码
在VSCODE打开目录下的GPIO历程
  1. D:\Users\BL\aithinker_Ai-M6X_SDK\examples\peripherals\gpio\gpio_input_output
复制代码


根据电路图可知RGB灯三颜色分别对应12 14 15输出GPIO,此外还有两个0603的LED灯对应27 29
008.png

代码修改如下
009.png

  1. #include "bflb_gpio.h"
  2. #include "board.h"

  3. struct bflb_device_s *gpio;

  4. int main(void)
  5. {
  6. board_init();

  7. gpio = bflb_device_get_by_name("gpio");
  8. printf("gpio output\r\n");
  9. bflb_gpio_init(gpio, GPIO_PIN_12, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);//R
  10. bflb_gpio_init(gpio, GPIO_PIN_14, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);//G
  11. bflb_gpio_init(gpio, GPIO_PIN_15, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);//B

  12. bflb_gpio_init(gpio, GPIO_PIN_27, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);//W
  13. bflb_gpio_init(gpio, GPIO_PIN_29, GPIO_OUTPUT | GPIO_PULLUP | GPIO_SMT_EN | GPIO_DRV_0);//C
  14. int led[]=
  15. {
  16. GPIO_PIN_12,
  17. GPIO_PIN_14,
  18. GPIO_PIN_15,

  19. GPIO_PIN_27,
  20. GPIO_PIN_29,

  21. };
  22. while (1) {
  23. // bflb_gpio_set(gpio, GPIO_PIN_0);
  24. // printf("GPIO_PIN_1=%x\r\n", bflb_gpio_read(gpio, GPIO_PIN_1));
  25. // bflb_mtimer_delay_ms(2000);

  26. // bflb_gpio_reset(gpio, GPIO_PIN_0);
  27. // printf("GPIO_PIN_1=%x\r\n", bflb_gpio_read(gpio, GPIO_PIN_1));
  28. // bflb_mtimer_delay_ms(2000);
  29. for(int l=0;l<=4;l++)
  30. {

  31. bflb_gpio_set(gpio, led[l]);
  32. bflb_mtimer_delay_ms(200);
  33. bflb_gpio_reset(gpio, led[l]);
  34. bflb_mtimer_delay_ms(200);
  35. }

  36. }
  37. }
复制代码


4、编译程序
右键main.c文件然后选择在终端中打开
010.png

然后在vscode底部的中断中输入
  1. make
复制代码

就能编译了,如果出现Built target combine就说明编译成功了

011.png


5、下载(烧写)程序

成功后输入命令
  1. make flash COMX=COM7
复制代码

因为我的是COM7串口所以输入的是这样,具体根据你串口号改,串口号在设备管理器可以查看(搜索栏搜索设备管理)

012.png

按住IO2按键,然后回车,按完回车按一下EN(复位)按键,下载完后松开IO2键
我看开发板上有有自动下载电路,不知道为啥官方没贴那两个三极管,不知道为啥,难道是不好用?有自动下载电路,就不用麻烦按按键了。
013.png

6、效果演示

QQ图片20240503233327.gif


7、总结
整个开发环境搭建和点灯挺顺利的,没遇到啥大问题,如果官方能像esp-idf那样有个vscode插件搭建环境会更方便。
后续深入研究一下开发板的其他功能,看看这个开发版的强大之处
这个BL618处理器配置听强大的,就是缺少生态,大家玩起来才能带动BL的发展,可以看出来安信可的试用活动就是想要推动大家玩起来这个SOC。
希望它的生态越来越好,互利共赢。


005.png
回复

使用道具 举报

1055173307 | 2024-5-4 09:50:40 | 显示全部楼层
回复

使用道具 举报

iiv | 2024-5-4 11:54:16 | 显示全部楼层
现在安信可论坛资料已经很多了,可以玩起来了
回复 支持 反对

使用道具 举报

干簧管 | 2024-5-4 13:33:09 | 显示全部楼层
很多
回复

使用道具 举报

HaydenHu | 2024-5-4 20:07:43 | 显示全部楼层
iiv 发表于 2024-5-4 11:54
现在安信可论坛资料已经很多了,可以玩起来了

都是点灯,缺乏其他常用玩法
回复 支持 反对

使用道具 举报

crui1527 | 2024-5-5 01:02:57 | 显示全部楼层
点赞
回复

使用道具 举报

楚华 | 2024-6-6 19:03:07 | 显示全部楼层
点灯成功
回复

使用道具 举报

7788 | 2024-6-7 11:43:50 | 显示全部楼层
真详细
回复

使用道具 举报

timo | 2024-7-24 20:23:45 | 显示全部楼层
恭喜点灯
回复

使用道具 举报

起名字好难 | 2024-8-2 17:01:18 | 显示全部楼层
make[3]: *** [CMakeFiles\gpio_input_output_bl616.elf.dir\build.make:106: build_out/gpio_input_output_bl616.elf] Error 1
make[3]: *** Deleting file 'build_out/gpio_input_output_bl616.elf'
make[2]: *** [CMakeFiles\Makefile2:512: CMakeFiles/gpio_input_output_bl616.elf.dir/all] Error 2
make[1]: *** [Makefile:90: all] Error 2
make: *** [../../../../project.build:51: build] Error 2
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则