半岛·综合体育(中国)官方网站 bandao sports

新闻中心

诚邀各行业优秀的合作伙伴与半岛·综合体育一起共建生态

【Thinker开发堂】安信可Ai-WB2系列模组linux开发环境搭建

2024-01-30

96
分享

文章目录
一、Ubuntu安装
1.1 安装VMware Workstation Pro
1.2 安装Ubuntu
二、编译
三、烧录固件到设备
3.1 方式一:用命令行烧录
3.2 方式二:用可视化软件烧录(windows)
四、自定义工程如何修改Makefile
五、开发资料



01
Ubuntu安装
在Linux下编译速度比windows快很多,一般推荐优先使用linux环境开发。Ubuntu是非常常见Linux操作系统。这里介绍下如何快速搭建Ubuntu虚拟机。
1.1 安装VMware Workstation Pro
下载 VMware Workstation Pro 16安装




剩下的一直点下一步直到安装完成即可
激活:
打开VMware Workstation Pro ->帮助->输入许可证密钥。
学习用途:百度一下“vmware workstation 16许可证密钥”。
商业用途:到VMware官网购买正版许可证。
1.2 安装Ubuntu
直接下载安装好的Ubuntu20.04
打开VMware Workstation Pro -> 文件 -> 打开 -> 选择下载并解压好的Ubuntu文件路径


直接开机即可,用户名和密码都是axk


Ubuntu虚拟机已经安装好Ai-WB2系列模组的开发环境,sdk位于主目录 -> bl_iot_sdk


下面括号内内容针对阅读此博文前已安装过Ubuntu的用户
{
1.无需重新安装Ubuntu
2.SDK获取:git clone github.com/bouffalolab/
3.打开终端,安装make,命令:sudo apt-get update、sudo apt-get install make
4.安装串口工具,此处选用cutecom,执行命令:sudo apt-get install cutecom
5.在 Linux 中添加用户到 dialout,执行命令:sudo usermod -a -G dialout $USER
}
02
编译
进入需要编译的工程目录,如进入hello world工程,命令:cd customer_app/get-start/helloworld,进行编译,命令./genromap
出现以下日志说明已经编译成功


编译生成的固件在build_out文件夹内: helloworld.bin
03
烧录固件到设备
3.1 方式一:用命令行烧录

  • 模组接线

Ai-WB2-XXUSB to TTLTXRXRXTXIO8DTRENRTSVDD3.3VGNDGND
注意IO8在模组背面的圆点上

  • 开发板进入烧录模式:
  • 接USB到电脑,同时按下BURN和EN两个按键,先松开EN按键再松开BURN按键

将设备连接到虚拟机


设置串口日志波特率 :打开
tools/flash_tool/chips/bl602/device_tree/bl_factory_params_IoTKitA_40M.dts,在uart{ }中设置,这里设置为115200


烧录执行命令行:
make flash_only

  • 1

出现以下日志表示烧录成功


烧录完成后打开串口助手:sudo cutecom
在cutecom中设置好波特率后打开串口


复位模组后打印helloworld


3.2 方式二:用可视化软件烧录(windows)
下载软件:docs.ai-thinker.com/_me
模组接线:
Ai-WB2-XXUSB to TTLTXRXRXTXENRTSVDD3.3VGNDGND
已验证支持的串口芯片有FT232、CH340。
开发板接线:直接把usb接到电脑即可。
需要烧录的Parttion Table、Factory Params、Boot2 Bin文件分别位于:
v1.7.4-release\chips\bl602\partition\partition_cfg_4M.toml
v1.7.4-release\chips\bl602\device_tree\bl_factory_params_IoTKitA_40M.dts
v1.7.4-release\chips\bl602\builtin_imgs\boot2_isp_v5.6\boot2_isp_release.bin
编译生成的应用层固件烧录到Firmware Bin
注意:烧录工具和固件不要放到中文路径内


日志串口默认波特率为2000000,如果需要修改日志串口波特率可以在文件v1.7.4-release\chips\bl602\device_tree\bl_factory_params_IoTKitA_40M.dts内修改,修改后重新下载即可。


04
自定义工程如何修改Makefile
sdk里面的例程都比较简单,把所有的源文件都放在同一个文件夹里面就可以了,但是当我们的项目比较大的时候,会有很多的.c和.h文件,都放在同一个文件夹里面就会有点乱了,这时候把不同功能模块的代码放在不同的文件夹看起来就舒服很多了,怎么实现呢?
以最简单的helloworld工程为例,基于官方helloworld工程修改。
需求:
更改工程路径,把helloworld路径由bl_iot_sdk/customer_app/get-start/helloworld改为bl_iot_sdk/Ai-WB2-Demo/helloworld
增加一个文件夹component,component文件夹内新增hello.c和hello.h文件,把helloworld打印放到hello.c内
实现:
1.设置SDK路径
修改helloworld内的Makeflie的sdk路径,由原来的
BL60X_SDK_PATH_GUESS ?= $(shell pwd)
BL60X_SDK_PATH ?= $(BL60X_SDK_PATH_GUESS)/…/…/…
改为
BL60X_SDK_PATH_GUESS ?= $(shell pwd)
BL60X_SDK_PATH ?= $(BL60X_SDK_PATH_GUESS)/…/…
2.在component组件添加到Makeflie
INCLUDE_COMPONENTS += component
EXTRA_COMPONENT_DIRS += $(PROJECT_PATH)/component
3.component文件夹内增加名为bouffalo.mk的Makeflie文件编译hello.c,bouffalo.mk内增加代码:


完整工程见:
gitee.com/chencong_cc/A


05

更多资料


●安信可官网docs:docs.ai-thinker.com/wif

●bouffalolab官方SDK:github.com/bouffalolab/,官方例程位于customer_app文件夹内。

●编程指南:bouffalolab.github.io/b

●原博文地址:Ai-WB2系列模组linux开发环境搭建





安信可更多产品信息可点击以下链接查阅:

►开发资料:https://docs.ai-thinker.com/

►官方教程:https://blog.csdn.net/Boantong_

►安信可官网:https://www.ai-thinker.com

►安信可社区:http://bbs.ai-thinker.com/

►业务咨询请联系:18022036575