第 1 章 快速入门

本章旨在指导用户搭建 AC63N 硬件开发的软件环境,通过一些简单的示例展示如何使用AC63N_BT_SDK系列 (BlueTooth Software Development Kit ) 的配置菜单,指导固件代码的编译、下载并烧写至 AC63N 开发板等步骤。

该AC63N(2021年版本)的文档版本在持续开发中,另外包括 Stable version 的文档,以及其他版本的文档 AC63_BT_SDK 版本的系统配置可供参考。

概要

AC63N系列 SoC 芯片支持以下功能:
蓝牙双模(支持蓝牙EDR、蓝牙BLE5.2)
超低功耗处理器
数传透传智能设备
支持低功耗RTC,闹钟和时基唤醒
支持浮点与数学函数加速运算
支持超低功耗蓝牙广播、连接待机、组网传输等
具有低延时远距离数据传输能力,满足音乐播放控制、智能控制、传感器收集数据传输及处理要求
支持LDO或DCDC供电模式
提供USB、按键 ADC、IIC、SPI、Q-decoder、MCPWM、LED CONTROL 等丰富的外设接口

准备工作

硬件

一款 AC63N 开发板;
USB 数据线 (例如:A 转 Micro-B);
USB 下载器;
电脑(Windows、Linux 或 Mac OS系统),以下说明以Windows系统安装编译为例。

软件

您可以选择下载并手动安装以下软件:
安装 “编译器-2.4.4”杰理工具链,用于编译 AC63N 代码;
编译构建工具 ——CodeBlocks 为编译工具,用于编译 AC63N 应用程序;
获取 AC63N 开发框架。该框架已经基本包含 AC63N 使用的 API(软件库和源代码)和运行工具链的脚本;

详细安装过程

第一步:安装工具链

基于AC63N 的SDK开发,用户需要安装以下两个工具:

集成开发环境 Codeblocks

杰理编译器

需要先安装“集成开发环境 Codeblocks”,再安装“杰理编译器”。

第二步:包管理工具的安装

包管理工具,是用于下载杰理SDK需要使用的工具,同时也负责打开 “.jlxproj” 后缀的文件。即,包管理工具负责从杰理服务器端,把SDK所需要的最新工具,下载到当前电脑。
双击 “latest.exe” 进行安装,按照提示安装完成即可,安装完成后,双击直接打开后缀为 “.jlxproj” 的文件。

第三步:配置工具使用

打开sdk工程目录,进入``fw-AC63_BT_SDK-ac63_bt_sdk资料 cpu/bd19/tools/AC632N_config_tool 目录,如图1.1所示。
../_images/图片12.png

图1.1

双击【AC632N_配置工具入口(Config Tools Entry).jlxproj】,打开【杰理SDK工具】,如图1.2所示。

../_images/图片22.png

图1.2

【杰理SDK工具】界面说明: 1)编辑FW文件:点击【编辑FW文件】,可对一个FW文件的进行编辑,修改FW文件的通用配置、蓝牙配置、充电配置,界面如下图1.3所示。

../_images/图片31.png

图1.3

点击【配置恢复默认值】可以恢复sdk发布时的原始配置,配置完成后,点击【保存】,可选择保存路径保存修改过后的fw和ufw文件,如图1.4所示。

../_images/图片41.png

图1.4

2)显示原理图:点击【显示原理图】,可以打开一个“doc”的文件夹,可以在该文件夹下存放原理图等相关文件; 3)编译前配置:点击【编译前配置工具】,可以在sdk代码编译前进行相关项配置,打开界面如下图1.5所示。

../_images/图片51.png

图1.5

可以在【编译前配置工具】中进行通用配置、蓝牙配置,点击【配置恢复默认值】可以恢复sdk发布时的原始配置,配置完成后,点击【保存】保存配置,将会输出 cfg_tools.bin 文件到下载目录中,重新编译sdk代码可应用该最新配置;

4)打开下载目录:点击【打开下载目录】,将会打开tools下载目录, cfg_tools.bin 文件将会输出到该目录下;

5)检查依赖的软件包是否更新:点击【检查依赖的软件包是否更新】,将会查检查相关配置工具的版本更新情况,如有更新,则下载相应更新即可。

第四步:开始创建工程

现在,您可以开始准备开发 AC63N 应用程序了。您可以从 fw-AC63_BT_SDK-ac63_bt_sdk资料 中 apps/hid/board/bd19 目录下的 AC632N_hid.cbp 工程开始。

AC63N 编译系统不支持带有空格的路径。

第五步:连接设备

用 USB 线将 AC63N 开发板连接到 PC。一般情况下,当 AC63N 开发板与 PC 连接时,对应驱动程序应该已经被打包在操作系统中,并已经自动安装。
检查 Windows 的设备和驱动器。断开 AC63N 与 PC 的连接,然后重新连接,查看哪个USB设备从列表中消失后又再次出现,从而确定AC63N所对应的USB设备的名称。
连接USB下载器和PC检查 Windows 我的电脑中的设备和驱动器列表,如图1.6所示为CD驱动器(G)。
../_images/图片6.png

图1.6

第六步:下载目录INI配置文件生成

主要描述新版本SDK(v2.0.0及以后)对tools目录下 isd_config.ini 配置文件的配置和生成。
SDK配置文件 isd_config.iniisd_config_rule.c 根据对应板级配置 board_xxx_global_build_cfg.h 生成。

如果需要修改 isd_config.ini 配置文件,必须修改 board_xxx_global_build_cfg.h 或者 isd_config_rule.c ,如直接修改 isd_config.ini ,则每次编译修改将会被覆盖。

复位源配置

board_xxx_global_build_cfg.h 头文件中,复位源的代码如下所示:
//config long-press reset io pin,time,trigger level
 #if CONFIG_LP_TOUCH_KEY_EN
 #define CONFIG_RESET_PIN                        LDO  //io pin
 #define CONFIG_RESET_TIME                        4   //unit:second
 #define CONFIG_RESET_LEVEL               1  //tigger level(0/1)
 #else
 #define CONFIG_RESET_PIN                        PB01 //io pin
 #define CONFIG_RESET_TIME                       08   //unit:second
 #define CONFIG_RESET_LEVEL                      0  //tigger level(0/1)
 #endif

OTA升级配置

board_xxx_global_build_cfg.h 头文件中,OTA升级的代码如下所示:
#define CONFIG_DOUBLE_BANK_ENABLE               0     //单双备份选择(若打开了改宏,FLASH结构变为双备份结构,适用于接入第三方协议的OTA, PS: JL-OTA同样支持双备份升级, 需要根据实际FLASH大小同时配置CONFIG_FLASH_SIZE)
#define CONFIG_APP_OTA_ENABLE                0   //是否支持RCSP升级(JL-OTA)

PID和VID配置

board_xxx_global_build_cfg.h 头文件中,PID和VID的配置代码如下所示:
//DON'T MODIFY THIS CONFIG EXCEPT SDK PUBLISHER
#define CONFIG_CHIP_NAME                AC637N  //除了SDK发布者,请不要修改
//it can be modified before first programming,but keep the same as the original version
#define CONFIG_PID                       AC637N        //烧写或强制升级之前可以修改,之后升级要保持一致
//it can be modified before first programming,but keep the same as the original version
#define CONFIG_VID                      0.01    //烧写或强制升级之前可以修改,之后升级要保持一致

同一个产品所有固件需要保证CHIP、PID、VID一致,否则将无法烧写和升级。

VM大小配置

VM大小配置的代码如下所示:
//with single-bank mode,actual vm size should larger this VM_LEAST_SIZE,and dual bank mode,actual vm size equals this;
#define CONFIG_VM_LEAST_SIZE                    8K

uboot_debug、ota_debug.bin打印口配置

board_xxx_global_build_cfg.h 头文件中,打印口配置的代码如下所示:
//isd_download loader/uboot/update_loader debug io config
//#define CONFIG_UBOOT_DEBUG_PIN                  PA05
//#define CONFIG_UBOOT_DEBUG_BAUD_RATE            1000000

其他配置

其他配置请参考文件 board_xxx_global_build_cfg. 中注释进行配置。

第七步:编译及烧录工程

1)首先确定板级配置,定位不同型号开发板的cfg.h文件名;(可参考APP 使用说明–工程配置)
2)配置app选择,选择任意一种功能执行;
3)模式选择:配对码必须与另一设备的配对码一致;
4)配置对应case需求,配置模块必须是同名字,同地址;
5)按下USB下载器的“Update”按键,当USB下载器绿灯不亮时,则可烧录下载,编译后烧录到AC63N开发板,在codeblocks的下方列表Build log呈现如图1.7所示的结果。
../_images/图片7.png

图1.7

点击“build”为编译当前cbp工程文件,并烧录到设备;当打开了2个及以上的cbp工程文件,点击“rebuild”,全局定义的进行编译,并烧录到设备。