0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Ai-WB2系列模组linux开发环境搭建教程

安信可科技 来源:安信可科技 2023-05-08 15:12 次阅读

目录

一、Ubuntu安装

二、编译

三、烧录固件到设备

四、自定义工程如何修改Makefile

五、开发资料

PART 01 Ubuntu安装

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

1 安装VMware Workstation Pro

下载 VMware Workstation Pro 16

528da75e-ece8-11ed-90ce-dac502259ad0.png

52a4ab70-ece8-11ed-90ce-dac502259ad0.png

52baa8c6-ece8-11ed-90ce-dac502259ad0.png

剩下的一直点下一步直到安装完成即可

激活:打开VMware Workstation Pro ->帮助->输入许可证密钥。

学习用途:百度一下“vmware workstation 16许可证密钥”。

商业用途:到VMware官网购买正版许可证。

2 安装Ubuntu

直接下载安装好的Ubuntu20.04

百度网盘

提取码:z22u

下载完成后解压缩

打开VMware Workstation Pro -> 文件 -> 打开 -> 选择下载并解压好的Ubuntu文件路径

52dfe654-ece8-11ed-90ce-dac502259ad0.png

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

52f5dd06-ece8-11ed-90ce-dac502259ad0.png

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

530ff3ee-ece8-11ed-90ce-dac502259ad0.png

下面括号内内容针对阅读此博文前已安装过Ubuntu的用户

{无需重新安装Ubuntu

SDK获取:git clone https://github.com/bouffalolab/bl_iot_sdk.git

打开终端,安装make,命令:sudo apt-get update、sudo apt-get install make

安装串口工具,此处选用cutecom,执行命令:sudo apt-get install cutecom

在 Linux 中添加用户到 dialout,执行命令:sudo usermod -a -G dialout $USER }

PART 02 编译

进入需要编译的工程目录,如进入hello world工程,命令:cd customer_app/get-start/helloworld,进行编译,命令./genromap

出现以下日志说明已经编译成功

5321b282-ece8-11ed-90ce-dac502259ad0.png

编译生成的固件在build_out文件夹内: helloworld.bin

PART 03 烧录固件到设备

1 方式一:用命令行烧录

模组接线

535a1442-ece8-11ed-90ce-dac502259ad0.png

注意IO8在模组背面的圆点上

开发板进入烧录模式:

USB电脑,同时按下BURN和EN两个按键,先松开EN按键再松开BURN按键

将设备连接到虚拟机

53681a6a-ece8-11ed-90ce-dac502259ad0.png

设置串口日志波特率 :

tools/flash_tool/chips/bl602/device_tree/bl_factory_params_IoTKitA_40M.dts,在uart{ }中设置,这里设置为115200

53928750-ece8-11ed-90ce-dac502259ad0.png

烧录执行命令行:

53b4a0b0-ece8-11ed-90ce-dac502259ad0.png

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

53c33d28-ece8-11ed-90ce-dac502259ad0.png

烧录完成后打开串口助手:sudo cutecom

在cutecom中设置好波特率后打开串口

53ed6062-ece8-11ed-90ce-dac502259ad0.png

复位模组后打印helloworld

5404444e-ece8-11ed-90ce-dac502259ad0.png

2 方式二:用可视化软件烧录(windows)

下载软件

模组接线

541f8aec-ece8-11ed-90ce-dac502259ad0.png

已验证支持的串口芯片有FT232、CH340。

开发板接线:

直接把usb接到电脑即可

需要烧录的Parttion Table、Factory Params、Boot2 Bin文件分别位于:

v1.7.4-releasechipsl602partitionpartition_cfg_4M.toml

v1.7.4-releasechipsl602device_treel_factory_params_IoTKitA_40M.dts

v1.7.4-releasechipsl602uiltin_imgsoot2_isp_v5.6oot2_isp_release.bin

编译生成的应用层固件烧录到Firmware Bin

注意:烧录工具和固件不要放到中文路径内

5404444e-ece8-11ed-90ce-dac502259ad0.png

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

54534990-ece8-11ed-90ce-dac502259ad0.png

PART 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内

实现:

设置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)/…/…

在component组件添加到Makeflie

INCLUDE_COMPONENTS += component

EXTRA_COMPONENT_DIRS += $(PROJECT_PATH)/component

component文件夹内增加名为bouffalo.mk的Makeflie文件编译hello.c,bouffalo.mk内增加代码:

5470b9ee-ece8-11ed-90ce-dac502259ad0.png

完整工程见:

https://gitee.com/chencong_cc/Ai-WB2-Demo.git

PART 05 开发资料

安信可官网docs:https://docs.ai-thinker.com/wifi

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

编程指南:https://bouffalolab.github.io/bl_iot_sdk

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10990

    浏览量

    206736
  • Ubuntu
    +关注

    关注

    5

    文章

    533

    浏览量

    28839
  • 虚拟机
    +关注

    关注

    1

    文章

    855

    浏览量

    27378
  • Makefile
    +关注

    关注

    1

    文章

    121

    浏览量

    19094
  • 环境搭建
    +关注

    关注

    0

    文章

    51

    浏览量

    8985

原文标题:拿来就能用 | Ai-WB2系列模组linux开发环境搭建

文章出处:【微信号:安信可科技,微信公众号:安信可科技】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Ai-WB2系列模组linux开发环境搭建方案

    Linux下编译速度比windows快很多,一般推荐优先使用linux环境开发。Ubuntu是非常常见Linux操作系统。这里介绍下如何快
    发表于 09-09 09:55 324次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b><b class='flag-5'>linux</b><b class='flag-5'>开发</b><b class='flag-5'>环境</b><b class='flag-5'>搭建</b>方案

    Ai-WB2模组HTTP客户端POST请求方法

    需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线。
    的头像 发表于 10-28 09:05 820次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>模组</b>HTTP客户端POST请求方法

    Ai-WB2系列模组/开发板连接亚马逊云的方法介绍

    Ai-WB2系列模组/开发板一个
    的头像 发表于 01-13 15:11 714次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b>/<b class='flag-5'>开发</b>板连接亚马逊云的方法介绍

    安信可Ai-Thinker Ai-WB2系列eclipes搭建环境教程

    Ai-WB2系列模组或者开发板:网盘下载地址提取码:123402 软件的安装和环境变量配置eclipse软件安装双击eclipse-inst
    发表于 04-17 14:10

    安信可Ai-WB2系列模组固件烧录指导

    Ai-WB2-12F模组为例,按照如下表格进行接。
    的头像 发表于 05-14 10:59 744次阅读
    安信可<b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b>固件烧录指导

    Ai-WB2模组与手机建立SPP连接,在UART-Bluetooth LE透传模式下传输数据

    需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线,蓝牙调试助手。
    的头像 发表于 05-22 11:46 1219次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>模组</b>与手机建立SPP连接,在UART-Bluetooth LE透传模式下传输数据

    Ai-WB2系列的固件烧录指导

    Ai-WB2-12F模组为例,按照如下表格进行接线。
    的头像 发表于 06-05 09:58 565次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b>的固件烧录指导

    安信可WB2系列模组通过双85测试

    ​01、Ai-WB2系列模组通过双85测试Ai-WB2系列模组是安信可科技最新发布的2.4GHz
    的头像 发表于 11-03 10:46 764次阅读
    安信可<b class='flag-5'>WB</b>2<b class='flag-5'>系列</b><b class='flag-5'>模组</b>通过双85测试

    安信可Ai-WB2系列模组概述

    Ai-WB2系列模组是安信可科技开发的Wi-Fi&BT模组,该模组搭载BL602芯片作为核心处理
    的头像 发表于 09-09 10:01 857次阅读

    Ai-WB2系列模组linux开发环境搭建

    二:用可视化软件烧录(windows) 四、自定义工程如何修改Makefile 五、开发资料 01 Ubuntu安装 在Linux下编译速度比windows快很多,一般推荐优先使用linux
    的头像 发表于 09-11 15:51 376次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b><b class='flag-5'>linux</b><b class='flag-5'>开发</b><b class='flag-5'>环境</b><b class='flag-5'>搭建</b>

    Ai-WB2系列模组中静态内存和动态内存的获取

    eclipse软件,bl_iot_sdk,Ai-WB2系列模组或者开发板,静态内存分析软件bouffalo_parse_tool-win32。
    的头像 发表于 09-18 09:48 261次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b>中静态内存和动态内存的获取

    Ai-WB2系列模组AT固件使用教程

    需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线,安信可透传云服务器。
    的头像 发表于 09-24 11:19 1320次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b>AT固件使用教程

    安信可Ai-WB2系列模组基于TCP的MQTT连接服务器使用示例

    安信可Ai-WB2系列模组基于TCP的MQTT连接服务器使用示例
    的头像 发表于 10-16 10:21 448次阅读
    安信可<b class='flag-5'>Ai-WB2</b><b class='flag-5'>系列</b><b class='flag-5'>模组</b>基于TCP的MQTT连接服务器使用示例

    Ai-WB2模组HTTP客户端HEAD和GET请求方法

    需要准备的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线。
    的头像 发表于 10-21 16:37 344次阅读
    <b class='flag-5'>Ai-WB2</b><b class='flag-5'>模组</b>HTTP客户端HEAD和GET请求方法

    安信可Ai-WB2模组HTTP 客户端 POST请求方法

    的软硬件:Ai-WB2系列模组或者开发板,Type-C数据线。 02 连接路由器 先保证模块或者开发板上电打印ready,如下图: 发送AT
    的头像 发表于 10-30 17:27 336次阅读
    安信可<b class='flag-5'>Ai-WB2</b><b class='flag-5'>模组</b>HTTP 客户端 POST请求方法