找回密码
 立即注册

使用微信账号登录

只需一步,快速开始

CSR867X sink例程的VM工程属性编译选项简析

2020-5-15 10:51| 发布者: csdn| 查看: 1215| 评论: 0|来自: CSDN

摘要: 1. 引言 很多初学者在刚开始接触ADK的sink例程的VM工程时,对VM工程编译选项的用途缺乏了解,以致于经常遇到编

1. 引言

很多初学者在刚开始接触ADK的sink例程的VM工程时,对VM工程编译选项的用途缺乏了解,以致于经常遇到编译问题而无法继续开发。

本文以ADK4.4的sink例程的VM工程编译选项为例,尝试给出一些经验和理解。

2. VM编译选项简介

sink工程的编译选项既可以在xIDE的工程属性中查看,也可以在sink文件夹中的headset_vmprops.xml文件中查看详细介绍。

编译选项 功能简介
battery_operation 产品是否由电池供电
device_id_pskey 使能DIP描述协议
enable_gatt 使能GATT服务,所有基于BLE的服务的基础
ble_power_off_behaviour 在关机状态是否打开ble功能
enable_ancs_client 使能ancs客户端,ancs协议是苹果外设专属的服务协议,基于GATT
enable_hrs_client 使能hrs客户端,hrs是心率监测协议,基于GATT
enable_findme_client 使能findme客户端,findme是呼叫设备协议,基于GATT
enable_hid_client 使能hid客户端,hid是设备接口协议,基于GATT
enable_gatt_battery_server 使能电池电量服务端,基于GATT
enable_gatt_remote_battery_server 使能远程电池电量服务端,基于GATT
enable_gatt_peer_battery_server 使能对等设备电池电量服务端,基于GATT
enable_gatt_findme_server 使能findme服务端,基于GATT
enable_gatt_gaia_server 使能GAIA服务端,GAIA是高通的一个应用层协议
enable_gatt_proximity_server 使能接近服务端,基于GATT
enable_heart_rate_server 使能心率服务端,基于GATT
enable_ir_remote 使能红外遥控接收功能,可以解码红外遥控指令
enable_capsense 使能触摸按键功能
enable_avrcp 使能avrcp协议,音乐播放必备协议
enable_avrcp_now_playing 使能avrcp协议的now playing特性,显示歌曲信息必备选项
enable_avrcp_player_app 使能avrcp协议的player app特性,支持更多特性
enable_avrcp_browsing 使能avrcp协议的browsing特性,支持菜单显示等特性
include_cvc 使能高通的cvc语音通话算法,通话功能必备
three_way_calling 使能hfp协议的三方通话功能,支持呼叫保持等功能
enable_subwoofer 使能低音炮无线连接,支持通过蓝牙连接低音炮
enable_partymode 使能聚会模式,支持2个蓝牙设备连接并操作同一设备
enable_usb 使能USB device功能,是USB音乐播放、控制的基础选项
enable_usb_audio 使能USB audio功能
copy_usb_ms_readme 使能USB mass storage功能,可以枚举成一个移动存储设备
enable_speech_regcognition 使能语音识别功能,支持简单的本地语音指令
enable_wired 使能有线音频输入,包括模拟输入、SPDIF输入、I2S输入
enable_hi_res 使能对Hi-Res的支持,支持88.2和96KHz 24bit的音频处理和输出
enable_fm 使能对FM设备的支持,FM指的是无线电台接收模块
enable_fm_rds 使能对FM设备的RDS特性的支持,RDS是通过FM传输的节目信息等
enable_pbap 使能pbap协议,pbap是电话簿协议,可以将手机电话簿同步到音箱本地
enable_gaia 使能GAIA协议,GAIA协议是高通的应用层协议,支持基于手机APP的定制功能
enable_gaia_rfcomm 使能GAIA协议的rfcomm连接,rfcomm是传统蓝牙的数据传输通道
enable_gaia_persistent_user_eq_bank 使能GAIA协议的用户EQ设置功能,可成组存储EQ设置,方便用户在手机端切换
enable_mapc 使能消息访问协议,常用于车载蓝牙免提装置
enable_display 使能显示功能,搭配官方开发板自带的显示屏
enable_voice_assistant 使能语音助手,支持alexa的AMA协议
include_a2dp_extra_codecs 支持a2dp的扩展解码格式,如aptx, ldac等
include_aptx_acl_sprint 支持高通的aptx-ll解码格式
include_faststream 支持高通的faststream解码格式
enable_peer_device 使能对等设备支持,支持传统TWS连接(TWS耳机)、音频中继、广播模式(类JBL的一对多)
enable_peer_battery_level 使能对等设备电池电量通知,TWS从设备将电量通过avrcp通知给主设备
enable_upgrade 使能固件升级功能
enable_anc 使能主动降噪功能
enable_bredr_sc 使能传统蓝牙的加密连接功能
enable_watchdog 使能看门狗功能,当出现代码异常后可以自动软件复位
ahi_transport 应用主机接口,在ADK4.2之前只有SPI可以配置ADK config tool,ADK4.4支持通过SPI、USB、TRB设备配置ADK config tool
SW_VARIANT 软件参数
HW_VARIANT 硬件参数,与官方开发板型号有关,CSR867X选CNS10001v4即可
enable_selfie 使能selfie功能,支持蓝牙自拍杆应用
Execution mode 执行模式,建议用默认设置
Stack size 运行时栈大小,建议设为0
Transport 主机接口,默认是VM USB,如需支持串口应改为RAW
Firmware 固件参数,建议用默认设置
BlueCore hardware 默认自动识别,编译时需连接SPI才能识别,否则报编译错误
Flash/ROM size 默认自动识别
Build merge 编译时是否生成xpv和xdv文件,用于flash烧录
Storage type 设定固件存储类型,可以是内部Flash、ROM或外部Flash,建议默认设置
Panic action 程序崩溃时的动作,建议默认设置
Define symbols 工程全局宏定义
Libraries 工程编译时包含的库,位于C:\ADK_CSR867x.WIN.4.4.0.17\tools\lib\BlueLab-7.4-Release\assisted路径,包含时需去掉lib-前缀
SQIF Partitions 外部Flash分区,建议默认设置
Firmware Image 固件版本,默认使用官方固件,建议默认设置
Library Version 库版本,建议默认设置
Generate map file 生成映射文件,用于生成变量名、函数在编译出的固件中的地址等编译连接信息

3. 总结

  • 大多数与功能相关的编译选项是可以关闭的,以释放出更多资源。
  • 在打开或关闭编译选项时会出现编译异常,大多数是一些无关紧要的编译bug,可以自行手动修复。
  • 可以通过修改XXXX_vmprops.xml的方式以增加或删除编译选项,编译过程中会根据此xml文件动态生成mak文件。

来源:https://blog.csdn.net/wzz4420381/article/details/85345894
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
1

路过

雷人

握手

鲜花

鸡蛋

刚表态过的朋友 (1 人)

最新评论

小黑屋|手机版|我爱蓝牙网 - 52Bluetooth

GMT+8, 2024-5-6 02:49 , Processed in 0.088459 second(s), 15 queries , Gzip On, MemCached On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

返回顶部