This repository has been archived on 2023-07-17. You can view files and clone it, but cannot push or open issues or pull requests.
bl_mcu_sdk/README_zh.md
2022-11-18 16:47:16 +08:00

7.2 KiB
Raw Blame History

License Release

English Version

简介

bl mcu sdk 是 Bouffalo Lab 提供的 MCU 软件开发包,支持博流智能所有系列芯片。

SDK 版本与芯片支持情况

注意1v1.4.5 版本之前的驱动库使用 1.0 版本hal + std之后的版本都将使用 2.0 版本 (lhal + soc)。如果使用 v1.4.5 ,请切换分支到 release-v1.4.5

注意2soc 由于是非通用的外设,代码风格和接口名还是延续之前版本,但是后续会更新到新的代码风格。

芯片 v1.4.5 latest
BL602/BL604
BL702/BL704/BL706
BL616/BL618 ×
BL808 ×

LHAL 支持情况

LHAL 是博流为统一通用外设接口而设计的驱动库,代码精炼并且支持博流所有系列芯片,方便用户使用和移植到其他平台。

备注: 表示已支持;× 表示未支持; 表示已支持但未测试;- 表示没有该外设。

外设 BL602/BL604 BL702/BL704/BL706 BL616/BL618 BL808
ADC
CAM - × × ×
CKS
DAC
DMA
EFUSE × × × ×
EMAC -
FLASH
GPIO
I2C
IR
MJPEG × ×
PWM_v1 - -
PWM_v2 - -
RTC
SEC_AES
SEC_SHA
SEC_TRNG
SEC_PKA
SPI
TIMER
UART
USB_v1 - - -
USB_v2 - -
WDG

代码框架


bl_mcu_sdk
├── bsp
│   ├── board
│   │   └── bl702
│   │   └── bl616
│   │   └── bl808
│   └── common
├── components
│   ├── bflog
│   ├── cherryusb
│   ├── fatfs
│   ├── freertos
│   ├── lua
│   ├── lvgl
│   ├── lwip
│   └── shell
├── docs
├── drivers
│   ├── lhal
│   └── soc
├── examples
│   ├── bflog
│   ├── fatfs
│   ├── freertos
│   ├── helloworld
│   ├── lua
│   ├── lvgl
│   ├── peripherals
│   └── shell
└── tools
    └── cmake
    └── kconfig
    └── make

  • bsp/board : 包含时钟、引脚、内存管理和 console 的板级初始化
  • bsp/common : 存放一些板级相关的常用外设驱动代码
  • components : 存放第三方库公共组件
  • docs : 存放教程文档以及其他帮助信息
  • drivers/lhal : 存放博流智能系列芯片通用外设驱动,支持所有系列芯片
  • drivers/soc : 存放博流智能系列芯片非通用外设驱动,各个芯片独有的部分
  • examples : 存放官方提供的示例代码
  • tools : 存放编译下载相关的工具包

环境搭建

工具链

命令行编译

在进行命令行编译之前,需要根据你的操作系统,选择对应的工具链,并配置到系统环境变量,并安装了 make 工具,然后才能进行下面操作。

  • 进入要编译的 demo 目录,且该目录下有 main.cMakefile 文件
  • 执行下面命令即可,以 BL616 为例
  • Linux 下第一次使用需要使用 chmod 配置 cmake 权限
cd bl_mcu_sdk
chmod +x tools/cmake/bin/cmake
cd examples/helloworld
make CHIP=bl616 BOARD=bl616dk
  • 如果使用 BL808 或者 BL606P ,需要添加 CPU_ID
cd bl_mcu_sdk
chmod +x tools/cmake/bin/cmake
cd examples/helloworld
make CHIP=bl808 BOARD=bl808dk CPU_ID=m0

CDK 编译

TODO

调试

当前仅支持使用 CKLink 调试。详细参考 bl mcu sdk 调试章节

固件烧录

推荐使用 BL DevCube 并通过串口进行固件的烧录。

芯片手册

芯片数据手册和参考手册见 文档

文档教程

获取更多 bl mcu sdk 开发相关的教程,如环境搭建、 api 手册、外设 demo 等,请参考:

视频教程

论坛

博流开发者交流论坛: https://bbs.bouffalolab.com/

许可协议

bl mcu sdk 完全开源,遵循 Apache License 2.0 开源许可协议,可以免费在商业产品中使用,并且不需要公开私有代码。

/*
 * Copyright (c) 2022 Bouffalolab team
 *
 * SPDX-License-Identifier: Apache-2.0
 */