mcu_ab568x/userboot240328/app/projects/AB5681G_320/config.h
2025-05-30 18:03:10 +08:00

215 lines
14 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*****************************************************************************
* 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功能。1dump近端算法前后数据2dump远端降噪前后数据
#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