炬芯科技新一代的低功耗蓝牙芯片 ATB110X的软件开发板,供用户快速评估学习蓝牙、IoT等功能开发。
开发板硬件资源介绍:
• 板载蓝牙天线
• 1 路 MIC
• 5 路 PWM
• 4 个 PWM 灯,一个电源指示灯
• 矩阵按键 *6、AD 按键 *3
• 1 个 USB 口
• 1 个红外发射头,1 个红外接收头
• 板载 daplink
• 1 个 reset 键,一个电源开关,一个电源选择开关
• 两种供电方式: usb、电池
软件资源介绍:
开发套件提供完整功能的 SDK 框架供用户参考开发,并提供大量的使用示例和参考代码。
• 蓝牙语音遥控器示例
• 蓝牙 profile 示例
• 蓝牙主机、主从示例
• 各个驱动模块示例
开发板概况:
开发板由核心板和底板构成,如图2.1所示:
在使用前,需要对开发板进行一些检查并连接串口:
• Daplink: 短接 SWCLK、SWDIO。
• 电源:电源开关选择 ON, 电源选择开关选择 USB&Li。
• UART: GPIO2 接串口 TX,GPIO3 接串口 RX (UART0)。
开发环境搭建:
*开发工具
ATB110X方案开发使用 Keil uVision5 (V5.21 及以上版本)
*调试工具
ATB110X 开发板上集成了基于 LPC11U35 实现的 DAPLink (cmsis-dap),支持以下功能:
• Debug ARM Cortex-M SOC
• usb-serial
使用 usb 线连接开发板和 PC 后,PC 上的设备管理器增加 3 个设备,如图3.1所示:
• Mbed Serial Port
• HID-complicant device
• USB 大容量存储设备
USB 大容量存储设备的磁盘卷标名为”DAPLINK”,如图3.2所示:
说明: 若未检测到 med Serial Port,需安装驱动 mbedWinSerial_16466
(路径:scripts\support\actions\utils\mbed_driver\),安装驱动时需要接上开发板。
使用 DAPLink 调试前需要在 Keil 中完成以下配置:
1.打开 Keil Options/Debug 界面,如图3.3所示
• Use: 选择 CMSIS-DAP Debugger
• 设置 debug 参数
1. Load Application at Startup: 不勾选。
2. Run to main: 不勾选。
2.打开 Keil Options/Debug/Settings 界面,如图3.4所示
• 若设备已连接,且系统未处于休眠状态:
1. Debug 界面内发现 DAPLINK;
2. Debug 界面内发现 Target 设备。
• Connect & Reset Options:不勾选 Reset after Connect。
3.打开 Keil Options/Utilities 界面,如图3.5所示
• 选择 Use Target Driver For Flash Programming
• 勾选 Use Debug Driver
• 不勾选 Update Target before Debugging
在线调试:
Keil 支持在线调试功能,通过点击”start/stop debug”即可启动在线调试。
在启动调试之前,需要增改一些配置,下面以 helloworld 程序为例说明如何在 Keil 下进行调试。
(路径:samples\peripheral\helloworld)
1. 增加一个 ram 工程
用 Keil 打开 Manage Project Items,在 Project Targets 一栏添加一个 ram工程,如图4.1所示
随后选择该工程,如图4.2所示:
2. 配置 ram 工程
• 新建 debug.ini 文件
在 helloworld 工程目录下新建一个名为 debug.ini 的配置文件,文件内容如下:
• 设置 debug 参数,如图4.3所示
1.Load Application at Startup: 不勾选。
2.Run to main: 停在 main 入口: 不勾选。
3.Initialization File: 载入 debug.ini 文件
• 删除编程算法
打开 Keil Options/Utilities/Settings,删除已有的烧写算法。点击 remove,如图4.4所示:
3. 编译
点击下图中的任意一个编译按钮,即可完成编译。
4. 设置断点
为方便的控制程序的运行,可在 app_main 入口处设置一个断点,如图4.6所示:
5. 启动调试
点击“start/stop debug”启动调试,点击调试工具栏中的按钮单步调试。
固件烧写:
编译成功后,在 Keil 工具界面点击”Load”即可完成烧写。
5.1 配置
1. 拷贝 KEIL FLM
将scripts\support\actions\utils\keil_flash\ATB110X_SPI0.FLM 拷贝到目录C:\Keil\ARM\Flash\(请根据自己 Keil 实际安装路径进行调整)。
2. 选择 flash 工程,如图5.1所示:
说明: flash 是程序烧到 flash 的默认工程名,其他工程名亦可。
3. 根据 3.2 调试工具一节配置 Keil。
4. 打开 Keil Options/Utilities/Settings,如图所示。
• Download Function:选择”Erase Sectors”,”Program”,”Verify”。
• RAM for Algorithm:起始地址 0x20000000,size 0x4000。
• Programming Algorithm:
点击“remove”删除默认的“New Device 256kB Flash”(如果有的话),然后点击“Add”选择 ATB110X-SPI0。然后编辑 Address Range:start 配置为 0x20000000, size 采用默认值。如图5.2-5.3所示。
下面以 sample/peripheral/helloworld 工程程序为例,介绍固件的烧写。helloworld 示例程序代码如下:
完成 5.1 节配置,点击下图中的编译按钮编译成功后,点击 Keil 工程中的 LOAD 即可完成烧写。
烧录完成后,按下 reset 按键,系统将重启,串口将循环输出 Hello World!: