215 lines
14 KiB
C
215 lines
14 KiB
C
/*****************************************************************************
|
||
* Module : Config
|
||
* File : config.h
|
||
* Function : SDK配置文件
|
||
*****************************************************************************/
|
||
|
||
#ifndef USER_CONFIG_H
|
||
#define USER_CONFIG_H
|
||
#include "config_define.h"
|
||
|
||
#define LE_OTA_SYSTEM_EN 1
|
||
#define MUSIC_EN 0
|
||
#define GUI_EN 0
|
||
#define SENSOR_EN 0
|
||
#define OTA_EN 0
|
||
|
||
/*****************************************************************************
|
||
* Module : Function选择相关配置
|
||
*****************************************************************************/
|
||
#define MAX_FUNC_SORT_CNT 8 //最大支持左右快捷切换任务的个数
|
||
|
||
#define FUNC_MUSIC_EN 0 //是否打开MUSIC功能
|
||
#define FUNC_BT_EN 1 //是否打开蓝牙功能
|
||
#define FUNC_BT_DUT_EN 0 //是否打开蓝牙的独立DUT测试模式
|
||
#define FUNC_USBDEV_EN 0 //是否打开USB DEVICE功能
|
||
#define FUNC_IDLE_EN 0 //是否打开IDLE功能
|
||
|
||
/*****************************************************************************
|
||
* Module : 系统功能选择配置
|
||
*****************************************************************************/
|
||
#define BUCK_MODE_EN 1 //是否BUCK MODE
|
||
#define SYS_CLK_SEL SYS_176M //选择系统时钟
|
||
#define POWKEY_10S_RESET xcfg_cb.powkey_10s_reset
|
||
#define SOFT_POWER_ON_OFF 0 //是否使用软开关机功能
|
||
#define PWRKEY_2_HW_PWRON 0 //用PWRKEY模拟硬开关
|
||
#define USB_SD_UPDATE_EN 0 //是否支持UDISK/SD的离线升级
|
||
#define GUI_SELECT GUI_TFT_240_240_ST7789P3//GUI Display Select
|
||
//#define GUI_SELECT GUI_TFT_320_ST77916 //GUI Display Select
|
||
#define LCD_BL_PF1 0 //使用PF1作为背光IO
|
||
#define CTP_SELECT CTP_NO //CTP Select
|
||
#define UART0_PRINTF_SEL PRINTF_PB3 //选择UART打印信息输出IO,或关闭打印信息输出
|
||
#define SYS_INIT_VOLUME xcfg_cb.sys_init_vol //系统默认音量
|
||
|
||
#define HEAP_FUNC_SIZE 4096 //FUNC HEAP SIZE
|
||
#define SYS_COTIME_EN 1 //是否使用软件定时器功能
|
||
|
||
/* 屏驱兼容 */
|
||
#define GUI_TFT_COMPATIBLE_DRIVER 1 //是否使用屏驱动兼容功能 (1:使用 0:不使用)
|
||
/*****************************************************************************
|
||
* Module : GUI相关配置
|
||
*****************************************************************************/
|
||
#define COMPO_BUF_SIZE 1024 //组件BUF大小(2个BUF)
|
||
#define TFT_TE_CYCLE 16.67 //TE周期时间 (ms)
|
||
#define TFT_TE_CYCLE_DELAY (TFT_TE_CYCLE / 3)
|
||
#define GUI_LINES_CNT 10 //单次推屏行数
|
||
#define GUI_FONT_W_SPACE 2 //字的间距
|
||
#define GUI_FONT_H_SPACE 4 //字的行间距
|
||
|
||
/*****************************************************************************
|
||
* Module : 场景切换相关配置
|
||
*****************************************************************************/
|
||
#define GUI_SIDE_MENU_WIDTH (GUI_SCREEN_WIDTH / 2) //边菜单的宽度
|
||
|
||
/*****************************************************************************
|
||
* Module : FLASH配置
|
||
*****************************************************************************/
|
||
#define FLASH_SIZE FSIZE_2M //根据芯片信息配置实际FLASH SIZE
|
||
#define FLASH_CODE_SIZE 120K //程序使用空间大小
|
||
#define FLASH_CM_SIZE 0x5000 //CM参数区大小, 参数区至少20k
|
||
#define FLASH_ERASE_4K 1 //是否支持4K擦除
|
||
#define FLASH_DUAL_READ 0 //是否支持2线模式
|
||
#define FLASH_QUAD_READ 0 //是否支持4线模式
|
||
#define SPIFLASH_SPEED_UP_EN 1 //SPI FLASH提速。
|
||
|
||
|
||
/*****************************************************************************
|
||
* Module : 蓝牙功能配置
|
||
*****************************************************************************/
|
||
#define BT_POWER_UP_RECONNECT_TIMES 0 //上电回连次数
|
||
#define BT_TIME_OUT_RECONNECT_TIMES 0 //掉线回连次数
|
||
#define BT_SIMPLE_PAIR_EN 1 //是否打开蓝牙简易配对功能(关闭时需要手机端输入PIN码)
|
||
#define BT_DISCOVER_CTRL_EN 0 //是否使用按键打开可被发现(按一下按键才能被连接配对)
|
||
#define BT_DISCOVER_TIMEOUT 100 //按键打开可被发现后,多久后仍无连接自动关闭,0不自动关闭,单位100ms
|
||
#define BT_ANTI_LOST_EN 0 //是否打开蓝牙防丢报警
|
||
#define BT_BQB_RF_EN 0 //蓝牙RF BR/EDR BQB测试
|
||
#define BT_CBT_TEST_EN 0 //蓝牙CBT测试使能
|
||
#define BT_FCC_TEST_EN 0 //蓝牙FCC测试使能 //默认PB3 波特率1500000通信
|
||
#define BT_LOCAL_ADDR 0 //蓝牙是否使用本地地址,0使用配置工具地址
|
||
|
||
#define BT_2ACL_EN 0 //是否支持连接两部手机
|
||
#define BT_A2DP_EN 0 //是否打开蓝牙音乐服务
|
||
#define BT_HFP_EN 0 //是否打开蓝牙通话服务
|
||
#define BT_HSP_EN 0 //是否打开蓝牙HSP通话服务
|
||
#define BT_PBAP_EN 0 //是否打开蓝牙电话簿服务
|
||
#define BT_MAP_EN 0 //是否打开蓝牙短信服务(用于获取设备时间,支持IOS/Android)
|
||
|
||
#define BT_SPP_EN 0 //是否打开蓝牙串口服务
|
||
#define BT_HID_EN 0 //是否打开蓝牙HID服务
|
||
#define BT_HID_TYPE 0 //选择HID服务类型: 0=自拍器(VOL+, 部分Android不能拍照), 1=自拍器(VOL+和ENTER, 影响IOS键盘使用), 2=游戏手柄, 3 = (支持BT_HID_SIMPLE_KEYBOARD时需要配置成3)
|
||
#define BT_HID_MENU_EN 0 //蓝牙HID是否需要手动连接/断开
|
||
#define BT_HID_DISCON_DEFAULT_EN 0 //蓝牙HID服务默认不连接,需要手动进行连接。
|
||
#define BT_HFP_CALL_PRIVATE_EN 0 //是否使能私密接听与蓝牙接听切换功能
|
||
#define BT_HFP_CALL_PRIVATE_FORCE_EN 0 //是否强制使用私密接听(手机端接听)
|
||
#define BT_HFP_RING_NUMBER_EN 0 //是否支持来电报号
|
||
#define BT_HFP_INBAND_RING_EN 0 //是否支持手机来电铃声(部分android不支持,默认用本地RING提示音)
|
||
#define BT_HFP_BAT_REPORT_EN 0 //是否支持电量显示 (上传电量给手机显示)
|
||
#define BT_HFP_MSBC_EN 0 //是否打开宽带语音功能
|
||
#define BT_VOIP_REJECT_EN 0 //网络电话不建立SCO功能使能,使用时需A2DP断开 (网络电话:微信通话,QQ通话等)
|
||
#define BT_A2DP_PROFILE_DEFAULT_EN 0 //蓝牙音频服务是否默认打开
|
||
#define BT_A2DP_VOL_CTRL_EN 0 //是否支持A2DP音量与手机同步
|
||
#define BT_A2DP_RECON_EN 0 //是否支持A2DP控制键(播放/暂停、上下曲键)回连
|
||
#define BT_AVDTP_DELAY_REPORT_EN 0 //是否上报当前延迟给手机进行音视频同步
|
||
#define BT_SCO_DBG_EN 0 //是否打开无线SPP调试通话参数功能
|
||
#define BT_CONNECTED_AUTO_PLAY_EN 0 //是否打开蓝牙连接后自动播放音乐功能
|
||
#define BT_ID3_TAG_EN 0 //是否获取蓝牙ID3信息,蓝牙ID3信息会从bt_id3_tag_callback函数中输出
|
||
#define BT_SINGLE_SLEEP_LPW_EN 0 //是否打开单模进休眠关bt省电
|
||
|
||
/*****************************************************************************
|
||
* Module : BLE功能配置
|
||
*****************************************************************************/
|
||
#define LE_EN 1 //是否打开BLE功能
|
||
#define LE_PAIR_EN 0 //是否使能BLE的加密配对
|
||
#define LE_SM_SC_EN 0 //是否使能BLE的加密连接,需同时打开LE_PAIR_EN。一键双联需要打开此配置。
|
||
#define LE_ADV_POWERON_EN 1 //是否上电默认打开BLE广播
|
||
#define LE_BQB_RF_EN 0 //BLE DUT测试模式,使用串口通信(仅用于BQB RFPHY测试)
|
||
|
||
//gatt 配置
|
||
#define LE_ATT_NUM 25 //最大支持多少条gatt属性, att_handle 1 ~ LE_ATT_NUM
|
||
|
||
//ANCS
|
||
#define LE_ANCS_CLIENT_EN 0 //是否打开ANCS Clients
|
||
#define LE_ANCS_MANUAL_EN 0 //是否需要手动打开ancs,调用ancs start
|
||
|
||
#define LE_ADV0_EN 0 //是否打开无连接广播功能
|
||
#define LE_WIN10_POPUP 0 //是否打开win10 swift pair快速配对
|
||
|
||
//FOTA功能配置
|
||
#define FOT_EN 1 //是否打开单备份升级标准协议
|
||
#define SW_VERSION "V0.0.1" //只能使用数字0-9,ota需要转码
|
||
#define HW_VERSION "V0.0.1" //只能使用数字0-9,ota需要转码
|
||
#define FOTA_UI_EN 1 //是否支持UI升级,需要用一个批处理打包UI+FOT
|
||
#define USERBOOT_SIZE 0x12000 //otadriver大小,需与主程序SDK中setuserboot大小对应
|
||
#define CODE_SIZE 0xF1000 //主程序code大小,需与主程序SDK中setcode大小对应
|
||
#define FLASH_UI_BASE 0x108000 //UI资源起始地址 需要4K对齐
|
||
#define OTA_FLAG_ADDR 0x3fa000
|
||
//OTA失败提醒界面 功能配置
|
||
#define OTA_FAIL_REMIND_EN 1 //0:关闭 1:打开
|
||
/*****************************************************************************
|
||
* Module : 通话功能配置
|
||
*****************************************************************************/
|
||
//通话参数
|
||
#define BT_SCO_DUMP_EN 0 //是否通过HART DUMP通话数据, 需要打开HUART调EQ功能。1:dump近端算法前后数据,2:dump远端降噪前后数据
|
||
#define BT_SCO_MAV_EN 0 //是否打开蓝牙通话变声功能
|
||
|
||
#define BT_PLC_EN 0
|
||
#define BT_ANL_GAIN xcfg_cb.bt_anl_gain //MIC模拟增益(0~23)
|
||
#define BT_DIG_GAIN xcfg_cb.bt_dig_gain //MIC数字增益(0-63), step: 0.5db
|
||
#define BT_CALL_MAX_GAIN xcfg_cb.bt_call_max_gain //配置通话时DAC最大模拟增益
|
||
|
||
#define BT_AEC_EN 1
|
||
#define BT_ECHO_LEVEL xcfg_cb.bt_echo_level //回声消除级别(级别越高,回声衰减越明显,但通话效果越差)(0~15)
|
||
#define BT_FAR_OFFSET xcfg_cb.bt_far_offset //远端补偿值(0~255)
|
||
|
||
#define BT_ALC_EN 1 //是否使能ALC
|
||
#define BT_ALC_FADE_IN_DELAY 26 //近端淡入延时(n*7.5ms)
|
||
#define BT_ALC_FADE_IN_STEP 1 //近端淡入速度(64ms)
|
||
#define BT_ALC_FADE_OUT_DELAY 2 //远端淡入延时(n*7.5ms)
|
||
#define BT_ALC_FADE_OUT_STEP 16 //远端淡入速度(4ms)
|
||
#define BT_ALC_VOICE_THR 0x30000
|
||
|
||
//通话近端降噪算法(耳机MIC采集数据降噪)
|
||
#define BT_SCO_NR_EN 1 //是否打开AEC硬件的AINS3降噪
|
||
#define BT_SCO_NR_LEVEL xcfg_cb.bt_sco_nr_level //0-15级(默认0级)
|
||
#define BT_SCO_NR_TRUMPET_EN xcfg_cb.bt_sco_nr_trumpet_en
|
||
|
||
//通话远端降噪算法(接收远端手机的通话数据降噪)
|
||
#define BT_SCO_FAR_NR_EN 0 //是否打开远端降噪算法(Code: 5.5KB, Ram: 2.1KB)
|
||
#define BT_SCO_FAR_NR_LEVEL 5 //强度: 0~5
|
||
#define BT_SCO_FAR_NOISE_THR 1 //范围: 0~20
|
||
|
||
/*****************************************************************************
|
||
* Module : 硬件I2C配置
|
||
*****************************************************************************/
|
||
#define I2C_HW_EN 1 //是否使能硬件I2C功能
|
||
|
||
/*****************************************************************************
|
||
* Module : 软件I2C配置
|
||
*****************************************************************************/
|
||
#define I2C_SW_EN 0 //是否使能软件I2C功能
|
||
|
||
#define I2C_SCL_IN() {GPIOEDIR |= BIT(5); GPIOEPU |= BIT(5);}
|
||
#define I2C_SCL_OUT() {GPIOEDE |= BIT(5); GPIOEDIR &= ~BIT(5);}
|
||
#define I2C_SCL_H() {GPIOESET = BIT(5);}
|
||
#define I2C_SCL_L() {GPIOECLR = BIT(5);}
|
||
|
||
#define I2C_SDA_IN() {GPIOEDIR |= BIT(7); GPIOEPU |= BIT(7);}
|
||
#define I2C_SDA_OUT() {GPIOEDE |= BIT(7); GPIOEDIR &= ~BIT(7);}
|
||
#define I2C_SDA_H() {GPIOESET = BIT(7);}
|
||
#define I2C_SDA_L() {GPIOECLR = BIT(7);}
|
||
#define I2C_SDA_IS_H() (GPIOE & BIT(7))
|
||
|
||
#define I2C_SDA_SCL_OUT() {I2C_SDA_OUT(); I2C_SCL_OUT();}
|
||
#define I2C_SDA_SCL_H() {I2C_SDA_H(); I2C_SCL_H();}
|
||
|
||
/*****************************************************************************
|
||
* Module : 传感器配置
|
||
*****************************************************************************/
|
||
#define SENSOR_STEP_SEL SENSOR_STEP_NULL
|
||
#define SENSOR_HR_SEL SENSOR_HR_NULL
|
||
#define SENSOR_GEO_SEL SENSOR_GEO_NULL
|
||
|
||
#include "config_extra.h"
|
||
|
||
#endif // USER_CONFIG_H
|