4.3.8. Bluetooth Dual-Mode AT Moudle
4.3.8.1. 概述
主要功能是在普通数传BLE和EDR的基础上增加了由上位机或其他MCU可以通过UART对接蓝牙芯片进行基本配置、状态获取、控制扫描、连接断开以及数据收发等操作。
AT控制透传支持从机模式和主机模式, 编译的时候只能二选一, 从机模式支持双模, 主机模式只支持BLE。
定义一套串口的控制协议,具体请查看协议文档《蓝牙AT协议》。
支持的板级: br25、br23、bd19、br34
支持的芯片: AC636N、AC635N、AC632N、AC638N
4.3.8.2. 工程配置
代码工程:apps/spp_and_le/board/bd19/AC632N_spp_and_le.cbp
先配置板级board_config.h和对应配置文件中蓝牙双模使能
*/\** * 板级配置选择 */ #define CONFIG_BOARD_AC632N_DEMO \ *// CONFIG_APP_KEYBOARD,CONFIG_APP_PAGE_TURNER* #include "board_ac632n_demo_cfg.h"
配置对应的board_acxxx_demo_cfg.h文件使能BLE或EDR(主机不支持EDR), 以board_ac632n_demo_cfg.h为例
#define TCFG_USER_BLE_ENABLE 1 //BLE功能使能 #define TCFG_USER_EDR_ENABLE 1 //EDR功能使能
配置app_config.h, 使能AT
//app case 选择,只能选1个,要配置对应的board_config.h #define CONFIG_APP_SPP_LE 0 #define CONFIG_APP_AT_COM 1 #define CONFIG_APP_DONGLE 0
配置app_config.h, 选择AT主机或AT从机(二选一)
//app case 选择,只能选1个,要配置对应的board_config.h #define CONFIG_APP_AT_COM 01//AT com HEX格式命令 #define TRANS_AT_COM 0 #define TRANS_AT_CLIENT 1 //选择主机AT
4.3.8.3. 主要说明代码
代码文件 | 描述 |
明 | |
app_at_com.c |
任务主要实现,流程 | |
at_uart.c |
串口配置,数据收发 | |
at_cmds.c |
AT协议解析处理 | |
ble_at_com.c |
从机ble控制实现 | |
spp_at_com.c |
spp控制实现 | |
ble_at_client.c |
主机ble控制实现 | |