快速入门

[中文]

本文档以 BK3633 开发板为例,通过一个简单的示例项目向您展示

  • 如何构建Armino FindMy编译环境;

  • 如何编译、下载固件;

准备工作

硬件:

  • BK3633 开发板

  • 串口烧录工具

  • 电脑(Windows 或 Ubuntu)

软件:

  • GCC ARM工具链,版本5.4.1;

  • Armino FindMy源代码;

  • 串口烧录软件;

Armino FindMy代码下载

您可从 gitlab 上下载 Armino FindMy:

mkdir -p ~/armino_findmy
cd ~/armino_findmy
git clone https://gitlab.bekencorp.com/armino/bk_findmy.git

Note

从官网的gitlab下载的为最近的SDK代码,相关账号找项目上审核申请。

准备编译环境

当前支持的编译环境:

  • Linux

  • Windows + Cygwin + arm gcc

Linux环境搭建

工具包下载后解压至 /opt/目录下.

Note

需要将此工具链路径添加到环境变量中:

export PATH=/opt/gcc-arm-none-eabi-10.3-2021.10/bin:$PATH

Windows + Cygwin环境搭建

OS: Windows 10

  • 1.准备Cygwin环境

可以从 https://dl.bekencorp.com/tools/bk_cygwin 下载,也可以自行在官网 https://www.cygwin.com 下载安装,下载后请解压,例如解压至d:\bk_cygwin

  • 2.准备git环境

beken的Cygwin自带git,如果是自行安装的Cygwin,需要在Cygwin内下载安装git。

  • 2.准备编译工具链

https://dl.bekencorp.com/tools/toolchain/arm/ 下载编译平台为windows的gcc编译器,例如gcc-arm-none-eabi-10.3-2021.10-win32.zip并解压至Cygwin根目录,opt/arm/gcc-arm-none-eabi-10.3-2021.10路径(没有的话请自行创建)。 全部完成的话,此时gcc路径应该是 <Cygwin根目录>/opt/arm/gcc-arm-none-eabi-10.3-2021.10/bin/arm-none-eabi-gcc.exe

  • 3.进入Cygwin环境

运行Cygwin根目录下的Cygwin.bat,执行 PATH=/opt/arm/gcc-arm-none-eabi-10.3-2021.10/bin/:$PATH ,编译环境准备就绪。

Note

每次进入Cygwin环境,都要执行PATH=/opt/arm/gcc-arm-none-eabi-10.3-2021.10/bin/:$PATH,否则找不到编译器

Note

不要在挂载Linux samba目录里用Cygwin环境编译,否则会提示 BinConvert.exe Permission denied.

Note

Windows目录和Cygwin目录的映射关系是 <Windows driver letter>:\<Windows path name> -> /cygdrive/<Windows driver letter>/<Windows path name>

Note

Windows的目录分隔符是\,而Cygwin为/

文档编译依赖库安装(仅Linux环境)

在终端上输入如下命令安装文档编译所需要的 python 依赖:

sudo pip3 install sphinx_rtd_theme future breathe blockdiag sphinxcontrib-seqdiag sphinxcontrib-actdiag sphinxcontrib-nwdiag sphinxcontrib.blockdiag

设置Python默认版本:

sudo ln -s /usr/bin/python3 /usr/bin/python

编译工程

  • 1.编译bootloader

    cd projects/boot
    make
  • 2.编译app_findmy

    cd projects/app_findmy
    make

Note

如果是首次编译,建议编译前修改配件信息。配件信息配置: 介绍了配件信息配置

Note

编译app_findmy可添加参数,传入版本信息,用于版本迭代

make APP_VERSION=100 STACK_VERSION=100 FW_VERSION_MAJOR_NUMBER=1 FW_VERSION_MINOR_NUMBER=0 FW_VERSION_REVISION_NUMBER=0
APP_VERSION: APP版本,需要大于等于STACK_VERSION; 默认为100
STACK_VERSION: 协议栈版本; 默认为100
FW_VERSION_MAJOR_NUMBER: 通过FMCA APP进行升级需要配置的版本; 默认为1
FW_VERSION_MINOR_NUMBER: 通过FMCA APP进行升级需要配置的版本; 默认为0
FW_VERSION_REVISION_NUMBER: 通过FMCA APP进行升级需要配置的版本; 默认为0

烧录代码

在 Windows 平台上, Armino 目前支持 UART 烧录。

通过串口烧录

Note

Armino支持UART烧录,推荐使用 CH340 串口工具小板进行下载。如果是首次烧录,建议配置出厂信息。出厂信息配置: 介绍了出厂信息配置

串口烧录工具如下图所示:

Uart

UART

烧录工具获取:

http://dl.bekencorp.com/tools/flash/ 在此目录下获取BEKEN_BKFIL_Vx.x.x.x_xxxx.zip

Note

支持本工程的BEKEN_BKFIL最低版本是V2.1.7.0。

BKFIL.exe 界面及相关配置(勾选通用芯片)如下图所示:

BKFIL GUI

BKFIL GUI

BKFIL GUI CONFIGURATION

BKFIL GUI CONFIGURATION

烧录串口UART1,点击``烧录``进行版本烧录, 烧录完成之后掉电重启设备。

串口Log

  • 目前BK3633平台,串口Log在UART1口,默认波特率为1M。