/***************************************************************************** * 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