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.
Go to file
2022-01-13 18:50:14 +08:00
bsp [update][board] update board config 2022-01-13 18:50:14 +08:00
common [fix][common] fix warning on 64bit cpu 2022-01-13 18:50:14 +08:00
components [update][shell] modify mm_monitor with mm_trace,add read write regs num 2021-12-10 12:35:52 +08:00
docs [doc] move development_guide rst html files out,update doc url in readme 2021-12-10 12:31:43 +08:00
drivers [update][drivers] update bl602 and bl702 std driver 2021-12-10 11:34:49 +08:00
examples [chore][cdk] update header file path 2021-12-17 16:05:45 +08:00
tools [fix][bflb_flash_tool] Fix linux apps file mode 2021-10-25 15:26:23 +08:00
zephyr [feat][zephyr] Enable bl_mcu_sdk as zephyr module 2021-10-25 15:27:08 +08:00
.clang-format [style] disable afternamespace 2021-07-12 17:28:01 +08:00
.cproject [chore][eclipse] add COMx=xxx command 2021-09-26 13:56:21 +08:00
.gitignore [doc] update gitignore 2021-08-26 12:26:41 +08:00
.project first commit 2021-04-13 19:27:30 +08:00
bl_mcu_flash.launch [chore] modify eclipse openocd path 2021-08-26 12:26:29 +08:00
bl_mcu_ram.launch [chore] modify eclipse openocd path 2021-08-26 12:26:29 +08:00
CMakeLists.txt [refactor] remove bflb_platform.h from bl602 and bl702 driver,include it in anywhere used 2021-10-19 20:04:23 +08:00
Jlink_bl_mcu_sdk.launch first commit 2021-04-13 19:27:30 +08:00
LICENSE first commit 2021-04-13 19:27:30 +08:00
Makefile [chore][cmake] add HAL API definition for using or not 2021-10-14 19:03:37 +08:00
README_zh.md [doc] move development_guide rst html files out,update doc url in readme 2021-12-10 12:31:43 +08:00
README.md [doc] move development_guide rst html files out,update doc url in readme 2021-12-10 12:31:43 +08:00
ReleaseNotes [doc] update release V1.4.2 2021-11-22 11:10:46 +08:00

License Release

中文版

Introduction

bl mcu sdk is an MCU software development kit provided by the Bouffalo Lab Team for BL602/BL604, BL702/BL704/BL706 and other series of chips in the future.

Code Framework


bl_mcu_sdk
├── bsp
│   ├── board
│   │   ├── bl602
│   │   └── bl702
│   └── bsp_common
├── build
├── common
│   ├── bl_math
│   ├── device
│   ├── list
│   ├── memheap
│   ├── misc
│   ├── partition
│   ├── pid
│   ├── ring_buffer
│   ├── soft_crc
│   └── timestamp
├── components
│   ├── ble
│   ├── fatfs
│   ├── freertos
│   ├── lvgl
│   ├── lwip
│   ├── mbedtls
│   ├── nmsis
│   ├── romfs
│   ├── rt-thread
│   ├── shell
│   ├── tflite
│   ├── tiny_jpeg
│   ├── usb_stack
│   └── xz
├── docs
│   ├── chipSpecification
│   ├── development_guide
│   └── development_guide_en
├── drivers
│   ├── bl602_driver
│   └── bl702_driver
├── examples
│   ├── acomp
│   ├── adc
│   ├── audio_cube
│   ├── ble
│   ├── boot2_iap
│   ├── camera
│   ├── coremark
│   ├── cxx
│   ├── dac
│   ├── dma
│   ├── dsp
│   ├── emac
│   ├── flash
│   ├── freertos
│   ├── gpio
│   ├── hellowd
│   ├── i2c
│   ├── i2s
│   ├── keyscan
│   ├── lvgl
│   ├── mbedtls
│   ├── memheap
│   ├── nn
│   ├── pka
│   ├── pm
│   ├── psram
│   ├── pwm
│   ├── qdec
│   ├── rt-thread
│   ├── rtc
│   ├── shell
│   ├── spi
│   ├── systick
│   ├── tensorflow
│   ├── timer
│   ├── uart
│   └── usb
├── out
└── tools
    ├── bflb_flash_tool
    ├── cdk_flashloader
    ├── cmake
    └── openocd
  • bsp/board : store the board-level description file such as clock_config.h (describes the clock configuration file) pinmux_config.h (describes the io function file) peripheral_config.h (describes the default configuration file of the peripheral) , These files together describe the board hardware information.
  • bsp/bsp_common : store some common peripheral driver codes related to the board.
  • common : store some common functions and macros that chip drivers will need.
  • components : store the third-party library public component library.
  • drivers : store bouffalo series of chip drivers.
  • examples : store the official sample code.
  • tools : store toolkits related to compiling and downloading.
  • docs : store tutorial documents and other help information.
  • build : store cmake cache files.
  • out : store the bin and map file generated after compiling and linking.

Hierarchy

Hierarchy

Resources

Hardware Resources

  • BL706 IOT Development board BL706_IOT

  • BL706 AVB Development Board BL706_AVB

There is currently no official purchase channel. If you want to get the above development board, you can apply for it in Forum post.

Chip Manual

Chip Reference Manual | Chip Data Manual

For more information, please visit the BouffaloLab developer website: https://dev.bouffalolab.com/

Documentation Tutorial

To get more bl mcu sdk documentation tutorial, like api manual or peripheral demo and so on, please visit:

Video Tutorial

Development Tools

Command Line Development

For the tools needed for command line development, please refer to linux development guide


git clone https://gitee.com/bouffalolab/toolchain_gcc_sifive_linux.git

Eclipse Development

For the tools needed for Eclipse development, please refer to Eclipse Development Guide


git clone https://gitee.com/bouffalolab/toolchain_gcc_sifive_windows.git

  • J-Link v10, J-Link debugger, used to debug the chip online, it is recommended to use the hardware of J-Link V10 or above, and the software driver is recommended to use V6 .98 version

CDK Development

For tools needed for CDK development, please refer to CDK Development Guide

  • CDK, Jianchi CDK integrated development environment of T-Head , it is recommended to use CDK v2.8.4 or above

Flash Tool

In addition to using CK-link, J-link and command line programming, it also supports graphical programming tools. Graphical programming tools provided by Bouffalolab:

Board Config Wizard

We provide BL Config Wizard to generate clock_config.hpinmux_config.h and peripheral_config.h file online.

How to make sdk as submodule

First add bl_mcu_sdk to your own project using the add submodule command, and then commit the gitmodules file to the remote repo.


git submodule add https://gitee.com/bouffalolab/bl_mcu_sdk.git bl_mcu_sdk
cd bl_mcu_sdk
git pull --rebase
cd ..
git add .gitmodules
git add bl_mcu_sdk
git commit -m "xxx"
git push

The final catalog presents the following results:

.
├── hardware
├── xxxx
├── xxxx
├── xxxx
├── bl_mcu_sdk
├── user_code
│   └── gpio
│       ├── gpio_blink
│       ├── gpio_dht11
│       └── gpio_int

Command Line compile

    cd bl_mcu_sdk
    make APP=xxx APP_DIR=../user_code

Forum

Bouffalolab Developer Forum: https://bbs.bouffalolab.com/

License

bl mcu sdk is completely open source and follows the Apache License 2.0 open source license agreement. It can be used in commercial products for free and does not require public private code.

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