AC695N-SoundBox-SDK/apps/soundbox/board/br23/board_ac6951g/board_ac6951g_cfg.h
2026-08-09 00:00:00 +00:00

997 lines
48 KiB
C
Raw Permalink 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.

#ifndef CONFIG_BOARD_AC6951G_CFG_H
#define CONFIG_BOARD_AC6951G_CFG_H
#ifdef CONFIG_BOARD_AC6951G
#define CONFIG_SDFILE_ENABLE
#define CONFIG_FLASH_SIZE (1024 * 1024)
//*********************************************************************************//
// 配置开始 //
//*********************************************************************************//
#define ENABLE_THIS_MOUDLE 1
#define DISABLE_THIS_MOUDLE 0
#define ENABLE 1
#define DISABLE 0
#define LINEIN_INPUT_WAY_ANALOG 0
#define LINEIN_INPUT_WAY_ADC 1
#define LINEIN_INPUT_WAY_DAC 2
#define NO_CONFIG_PORT (-1)
//*********************************************************************************//
// app 配置 //
//*********************************************************************************//
#define TCFG_APP_BT_EN 0
#define TCFG_APP_MUSIC_EN 1
#define TCFG_APP_LINEIN_EN 1
#define TCFG_APP_FM_EN 1
#define TCFG_APP_PC_EN 0
#define TCFG_APP_RTC_EN 1
#define TCFG_APP_RECORD_EN 0
#define TCFG_APP_SPDIF_EN 0
//*********************************************************************************//
// PCM_DEBUG调试配置 //
//*********************************************************************************//
//#define AUDIO_PCM_DEBUG //PCM串口调试写卡通话数据
//*********************************************************************************//
// UART配置 //
//*********************************************************************************//
#define TCFG_UART0_ENABLE ENABLE_THIS_MOUDLE //串口打印模块使能
#define TCFG_UART0_RX_PORT NO_CONFIG_PORT //串口接收脚配置用于打印可以选择NO_CONFIG_PORT
#define TCFG_UART0_TX_PORT IO_PORTA_05 //串口发送脚配置
#define TCFG_UART0_BAUDRATE 1000000 //串口波特率配置
//*********************************************************************************//
// IIC配置 //
//*********************************************************************************//
/*软件IIC设置*/
#define TCFG_SW_I2C0_CLK_PORT IO_PORTA_09 //软件IIC CLK脚选择
#define TCFG_SW_I2C0_DAT_PORT IO_PORTA_10 //软件IIC DAT脚选择
#define TCFG_SW_I2C0_DELAY_CNT 50 //IIC延时参数影响通讯时钟频率
//A组IO: SDA: DM SCL: DP B组IO: SDA: PC4 SCL: PC5
//C组IO: SDA: PB4 SCL: PB6 D组IO: SDA: PA5 SCL: PA6
#define TCFG_HW_I2C0_PORTS 'B' //选择第几组硬件引脚
#define TCFG_HW_I2C0_CLK 100000 //硬件IIC波特率
//*********************************************************************************//
// 硬件SPI 配置 //
//*********************************************************************************//
#define TCFG_HW_SPI1_ENABLE ENABLE_THIS_MOUDLE
//A组IO: DI: PB2 DO: PB1 CLK: PB0
//B组IO: DI: PC3 DO: PC5 CLK: PC4
#define TCFG_HW_SPI1_PORT 'A'
#define TCFG_HW_SPI1_BAUD 4000000L
#define TCFG_HW_SPI1_MODE SPI_MODE_BIDIR_1BIT
#define TCFG_HW_SPI1_ROLE SPI_ROLE_MASTER
#define TCFG_HW_SPI2_ENABLE ENABLE_THIS_MOUDLE
//A组IO: DI: PB8 DO: PB10 CLK: PB9
//B组IO: DI: PA13 DO: DM CLK: DP
#define TCFG_HW_SPI2_PORT 'A'
#define TCFG_HW_SPI2_BAUD 2000000L
#define TCFG_HW_SPI2_MODE SPI_MODE_BIDIR_1BIT
#define TCFG_HW_SPI2_ROLE SPI_ROLE_MASTER
//*********************************************************************************//
// FLASH 配置 //
//*********************************************************************************//
#define TCFG_NORFLASH_DEV_ENABLE DISABLE_THIS_MOUDLE
#define TCFG_FLASH_DEV_SPI_HW_NUM 1// 1: SPI1 2: SPI2
#define TCFG_FLASH_DEV_SPI_CS_PORT IO_PORTA_03
//*********************************************************************************//
// 充电参数配置 //
//*********************************************************************************//
//是否支持芯片内置充电
#define TCFG_CHARGE_ENABLE DISABLE_THIS_MOUDLE
//是否支持开机充电
#define TCFG_CHARGE_POWERON_ENABLE DISABLE
//是否支持拔出充电自动开机功能
#define TCFG_CHARGE_OFF_POWERON_NE DISABLE
#define TCFG_CHARGE_FULL_V CHARGE_FULL_V_4202
#define TCFG_CHARGE_FULL_MA CHARGE_FULL_mA_10
#define TCFG_CHARGE_MA CHARGE_mA_60
//*********************************************************************************//
// SD 配置 //
//*********************************************************************************//
#define SD_CMD_DECT 0
#define SD_CLK_DECT 1
#define SD_IO_DECT 2
#define TCFG_SD0_ENABLE ENABLE_THIS_MOUDLE
//A组IO: CMD:PA9 CLK:PA10 DAT0:PA5 DAT1:PA6 DAT2:PA7 DAT3:PA8
//B组IO: CMD:PB10 CLK:PB9 DAT0:PB8 DAT1:PB6 DAT2:PB5 DAT3:PB4
#define TCFG_SD0_PORTS 'B'
#define TCFG_SD0_DAT_MODE 1
#define TCFG_SD0_DET_MODE SD_CMD_DECT
#define TCFG_SD0_DET_IO IO_PORT_DM//当SD_DET_MODE为2时有效
#define TCFG_SD0_DET_IO_LEVEL 0//IO检查0低电平检测到卡。 1高电平(外部电源)检测到卡。 2高电平(SD卡电源)检测到卡。
#define TCFG_SD0_CLK (3000000*4L)
#define TCFG_SD1_ENABLE DISABLE_THIS_MOUDLE
//A组IO: CMD:PC4 CLK:PC5 DAT0:PC3 DAT1:PC2 DAT2:PC1 DAT3:PC0
//B组IO: CMD:PB5 CLK:PB6 DAT0:PB4 DAT1:PB8 DAT2:PB9 DAT3:PB10
#define TCFG_SD1_PORTS 'A'
#define TCFG_SD1_DAT_MODE 1
#define TCFG_SD1_DET_MODE SD_CLK_DECT
#define TCFG_SD1_DET_IO IO_PORT_DM//当SD_DET_MODE为2时有效
#define TCFG_SD1_DET_IO_LEVEL 0//IO检查0低电平检测到卡。 1高电平(外部电源)检测到卡。 2高电平(SD卡电源)检测到卡。
#define TCFG_SD1_CLK (3000000*4L)
//*********************************************************************************//
// USB 配置 //
//*********************************************************************************//
#define TCFG_PC_ENABLE TCFG_APP_PC_EN//PC模块使能
#define TCFG_UDISK_ENABLE ENABLE_THIS_MOUDLE//U盘模块使能
#define TCFG_OTG_USB_DEV_EN BIT(0)//USB0 = BIT(0) USB1 = BIT(1)
#include "usb_std_class_def.h"
#define TCFG_USB_PORT_CHARGE DISABLE
#define TCFG_USB_DM_MULTIPLEX_WITH_SD_DAT0 DISABLE
#if TCFG_USB_DM_MULTIPLEX_WITH_SD_DAT0
//复用情况下如果使用此USB口作为充电即LDO5V_IN连接到此USB口
//TCFG_OTG_MODE需要或上TCFG_OTG_MODE_CHARGE用来把charge从host区
//分开否则不需要如果LDO5V_IN与其他IO绑定则不能或上
//TCFG_OTG_MODE_CHARGE
#define TCFG_DM_MULTIPLEX_WITH_SD_PORT 0//0:sd0 1:sd1 //dm 参与复用的sd配置
#undef TCFG_OTG_MODE
#define TCFG_OTG_MODE (TCFG_OTG_MODE_HOST|TCFG_OTG_MODE_SLAVE|TCFG_OTG_MODE_CHARGE|OTG_DET_DP_ONLY)
#undef USB_DEVICE_CLASS_CONFIG
#if TCFG_SD0_SD1_USE_THE_SAME_HW //开启了双卡的可以使能读卡器存续设备
#define USB_DEVICE_CLASS_CONFIG (MASSSTORAGE_CLASS|SPEAKER_CLASS|MIC_CLASS|HID_CLASS)
#else
#define USB_DEVICE_CLASS_CONFIG (SPEAKER_CLASS|MIC_CLASS|HID_CLASS)
#endif
#undef TCFG_SD0_DET_MODE
#define TCFG_SD0_DET_MODE SD_CLK_DECT
#define TCFG_USB_SD_MULTIPLEX_IO IO_PORTB_08
#endif
//*********************************************************************************//
// fat_FLASH 配置 //
//*********************************************************************************//
#define TCFG_CODE_FLASH_ENABLE DISABLE_THIS_MOUDLE
#define FLASH_INSIDE_REC_ENABLE 0
#if TCFG_NORFLASH_DEV_ENABLE
#define TCFG_NOR_FAT 1//ENABLE
#define TCFG_NOR_FS 0//ENABLE
#define TCFG_NOR_REC 1//ENABLE
#else
#define TCFG_NOR_FAT 0//ENABLE
#define TCFG_NOR_FS 0//ENABLE
#define TCFG_NOR_REC 0//ENABLE
#endif
//*********************************************************************************//
// key 配置 //
//*********************************************************************************//
//#define KEY_NUM_MAX 10
//#define KEY_NUM 3
#define KEY_IO_NUM_MAX 6
#define KEY_AD_NUM_MAX 10
#define KEY_IR_NUM_MAX 21
#define KEY_TOUCH_NUM_MAX 6
#define KEY_RDEC_NUM_MAX 3
#define KEY_CTMU_TOUCH_NUM_MAX 6
#define MULT_KEY_ENABLE DISABLE //是否使能组合按键消息, 使能后需要配置组合按键映射表
//*********************************************************************************//
// iokey 配置 //
//*********************************************************************************//
#define TCFG_IOKEY_ENABLE DISABLE_THIS_MOUDLE //是否使能IO按键
#define TCFG_IOKEY_POWER_CONNECT_WAY ONE_PORT_TO_LOW //按键一端接低电平一端接IO
#define TCFG_IOKEY_POWER_ONE_PORT IO_PORTB_01 //IO按键端口
#define TCFG_IOKEY_PREV_CONNECT_WAY ONE_PORT_TO_LOW //按键一端接低电平一端接IO
#define TCFG_IOKEY_PREV_ONE_PORT IO_PORTB_00
#define TCFG_IOKEY_NEXT_CONNECT_WAY ONE_PORT_TO_LOW //按键一端接低电平一端接IO
#define TCFG_IOKEY_NEXT_ONE_PORT IO_PORTB_02
//*********************************************************************************//
// adkey 配置 //
//*********************************************************************************//
#define TCFG_ADKEY_ENABLE ENABLE_THIS_MOUDLE//是否使能AD按键
#define TCFG_ADKEY_LED_IO_REUSE DISABLE_THIS_MOUDLE //ADKEY 和 LED IO复用led只能设置蓝灯显示
#define TCFG_ADKEY_PORT IO_PORTA_10 //AD按键端口(需要注意选择的IO口是否支持AD功能)
#define TCFG_ADKEY_AD_CHANNEL AD_CH_PA10
#define TCFG_ADKEY_EXTERN_UP_ENABLE ENABLE_THIS_MOUDLE //是否使用外部上拉
#if TCFG_ADKEY_EXTERN_UP_ENABLE
#define R_UP 220 //22K外部上拉阻值在此自行设置
#else
#define R_UP 100 //10K内部上拉默认10K
#endif
//必须从小到大填电阻没有则同VDDIO,填0x3ffL
#define TCFG_ADKEY_AD0 (0) //0R
#define TCFG_ADKEY_AD1 (0x3ffL * 30 / (30 + R_UP)) //3k
#define TCFG_ADKEY_AD2 (0x3ffL * 62 / (62 + R_UP)) //6.2k
#define TCFG_ADKEY_AD3 (0x3ffL * 91 / (91 + R_UP)) //9.1k
#define TCFG_ADKEY_AD4 (0x3ffL * 150 / (150 + R_UP)) //15k
#define TCFG_ADKEY_AD5 (0x3ffL * 240 / (240 + R_UP)) //24k
#define TCFG_ADKEY_AD6 (0x3ffL * 330 / (330 + R_UP)) //33k
#define TCFG_ADKEY_AD7 (0x3ffL * 510 / (510 + R_UP)) //51k
#define TCFG_ADKEY_AD8 (0x3ffL * 1000 / (1000 + R_UP)) //100k
#define TCFG_ADKEY_AD9 (0x3ffL * 2200 / (2200 + R_UP)) //220k
#define TCFG_ADKEY_VDDIO (0x3ffL)
#define TCFG_ADKEY_VOLTAGE0 ((TCFG_ADKEY_AD0 + TCFG_ADKEY_AD1) / 2)
#define TCFG_ADKEY_VOLTAGE1 ((TCFG_ADKEY_AD1 + TCFG_ADKEY_AD2) / 2)
#define TCFG_ADKEY_VOLTAGE2 ((TCFG_ADKEY_AD2 + TCFG_ADKEY_AD3) / 2)
#define TCFG_ADKEY_VOLTAGE3 ((TCFG_ADKEY_AD3 + TCFG_ADKEY_AD4) / 2)
#define TCFG_ADKEY_VOLTAGE4 ((TCFG_ADKEY_AD4 + TCFG_ADKEY_AD5) / 2)
#define TCFG_ADKEY_VOLTAGE5 ((TCFG_ADKEY_AD5 + TCFG_ADKEY_AD6) / 2)
#define TCFG_ADKEY_VOLTAGE6 ((TCFG_ADKEY_AD6 + TCFG_ADKEY_AD7) / 2)
#define TCFG_ADKEY_VOLTAGE7 ((TCFG_ADKEY_AD7 + TCFG_ADKEY_AD8) / 2)
#define TCFG_ADKEY_VOLTAGE8 ((TCFG_ADKEY_AD8 + TCFG_ADKEY_AD9) / 2)
#define TCFG_ADKEY_VOLTAGE9 ((TCFG_ADKEY_AD9 + TCFG_ADKEY_VDDIO) / 2)
#define TCFG_ADKEY_VALUE0 0
#define TCFG_ADKEY_VALUE1 1
#define TCFG_ADKEY_VALUE2 2
#define TCFG_ADKEY_VALUE3 3
#define TCFG_ADKEY_VALUE4 4
#define TCFG_ADKEY_VALUE5 5
#define TCFG_ADKEY_VALUE6 6
#define TCFG_ADKEY_VALUE7 7
#define TCFG_ADKEY_VALUE8 8
#define TCFG_ADKEY_VALUE9 9
//*********************************************************************************//
// irkey 配置 //
//*********************************************************************************//
#define TCFG_IRKEY_ENABLE DISABLE_THIS_MOUDLE//是否使能ir按键
#define TCFG_IRKEY_PORT IO_PORTA_02 //IR按键端口
//*********************************************************************************//
// tocuh key 配置 //
//*********************************************************************************//
#define TCFG_TOUCH_KEY_ENABLE DISABLE_THIS_MOUDLE //是否使能触摸按键
/* 触摸按键计数参考时钟选择, 频率越高, 精度越高
** 可选参数:
1.TOUCH_KEY_OSC_CLK,
2.TOUCH_KEY_MUX_IN_CLK, //外部输入, ,一般不用, 保留
3.TOUCH_KEY_PLL_192M_CLK,
4.TOUCH_KEY_PLL_240M_CLK,
*/
#define TCFG_TOUCH_KEY_CLK TOUCH_KEY_PLL_192M_CLK //触摸按键时钟配置
#define TCFG_TOUCH_KEY_CHANGE_GAIN 4 //变化放大倍数, 一般固定
#define TCFG_TOUCH_KEY_PRESS_CFG -100//触摸按下灵敏度, 类型:s16, 数值越大, 灵敏度越高
#define TCFG_TOUCH_KEY_RELEASE_CFG0 -50 //触摸释放灵敏度0, 类型:s16, 数值越大, 灵敏度越高
#define TCFG_TOUCH_KEY_RELEASE_CFG1 -80 //触摸释放灵敏度1, 类型:s16, 数值越大, 灵敏度越高
//key0配置
#define TCFG_TOUCH_KEY0_PORT IO_PORTB_06 //触摸按键IO配置
#define TCFG_TOUCH_KEY0_VALUE 1 //触摸按键key0 按键值
//key1配置
#define TCFG_TOUCH_KEY1_PORT IO_PORTB_07 //触摸按键key1 IO配置
#define TCFG_TOUCH_KEY1_VALUE 2 //触摸按键key1按键值
//*********************************************************************************//
// ctmu tocuh key 配置 //
//*********************************************************************************//
#define TCFG_CTMU_TOUCH_KEY_ENABLE DISABLE_THIS_MOUDLE //是否使能CTMU触摸按键
#define TCFG_CTMU_TOUCH_KEY_PRESS_CFG 40//按下灵敏度s16,数值越小, 灵敏度越高一般设置30-100
#define TCFG_CTMU_TOUCH_KEY_RELEASE_CFG0 10 //释放灵敏度0s16数值越小灵敏度越高必须比按下灵敏度小
#define TCFG_CTMU_TOUCH_KEY_RELEASE_CFG1 160 //释放灵敏度1s16, 数值越小, 灵敏度越高,一般只需要调节上面两个
//key0配置
#define TCFG_CTMU_TOUCH_KEY0_PORT IO_PORTA_00 //触摸按键key0 IO配置
#define TCFG_CTMU_TOUCH_KEY0_VALUE 0 //触摸按键key0 按键值
//key1配置
#define TCFG_CTMU_TOUCH_KEY1_PORT IO_PORTA_01 //触摸按键key1 IO配置
#define TCFG_CTMU_TOUCH_KEY1_VALUE 1 //触摸按键key1 按键值
//*********************************************************************************//
// rdec_key 配置 //
//*********************************************************************************//
#define TCFG_RDEC_KEY_ENABLE DISABLE_THIS_MOUDLE //是否使能RDEC按键
//默认硬件引脚配置
//RDEC0配置
#define TCFG_RDEC0_ECODE1_PORT IO_PORTA_02
#define TCFG_RDEC0_ECODE2_PORT IO_PORTA_03
#define TCFG_RDEC0_KEY0_VALUE 0
#define TCFG_RDEC0_KEY1_VALUE 1
//RDEC1配置
#define TCFG_RDEC1_ECODE1_PORT IO_PORTB_02
#define TCFG_RDEC1_ECODE2_PORT IO_PORTB_03
#define TCFG_RDEC1_KEY0_VALUE 2
#define TCFG_RDEC1_KEY1_VALUE 3
//RDEC2配置
#define TCFG_RDEC2_ECODE1_PORT IO_PORTB_04
#define TCFG_RDEC2_ECODE2_PORT IO_PORTB_06
#define TCFG_RDEC2_KEY0_VALUE 4
#define TCFG_RDEC2_KEY1_VALUE 5
//*********************************************************************************//
// Audio配置 //
//*********************************************************************************//
#define TCFG_AUDIO_ADC_ENABLE ENABLE_THIS_MOUDLE
//MIC只有一个声道固定选择右声道
#define TCFG_AUDIO_ADC_MIC_CHA LADC_CH_MIC_R
//省电容MIC使能
#define TCFG_MIC_CAPLESS_ENABLE DISABLE_THIS_MOUDLE
/*MIC LDO电流档位设置
0:0.625ua 1:1.25ua 2:1.875ua 3:2.5ua*/
#define TCFG_AUDIO_ADC_LDO_SEL 2
// LADC通道
#define TCFG_AUDIO_ADC_LINE_CHA0 LADC_LINE1_MASK
#define TCFG_AUDIO_ADC_LINE_CHA1 LADC_CH_LINE0_L
#define TCFG_AUDIO_DAC_ENABLE ENABLE_THIS_MOUDLE
#define TCFG_AUDIO_DAC_LDO_SEL 1
#define TCFG_AUDIO_DAC_LDO_VOLT DACVDD_LDO_2_90V
/*预留接口,未使用*/
#define TCFG_AUDIO_DAC_PA_PORT NO_CONFIG_PORT
/*
DAC硬件上的连接方式,可选的配置:
DAC_OUTPUT_MONO_L 左声道
DAC_OUTPUT_MONO_R 右声道
DAC_OUTPUT_LR 立体声
DAC_OUTPUT_MONO_LR_DIFF 单声道差分输出
DAC_OUTPUT_FRONT_LR_REAR_LR 四声道输出
*/
//#define TCFG_AUDIO_DAC_CONNECT_MODE DAC_OUTPUT_FRONT_LR_REAR_LR
#define TCFG_AUDIO_DAC_CONNECT_MODE DAC_OUTPUT_LR
// #define TCFG_AUDIO_DAC_CONNECT_MODE DAC_OUTPUT_MONO_LR_DIFF
/*通话降噪模式配置*/
#define CVP_ANS_MODE 0 /*传统降噪*/
#define CVP_DNS_MODE 1 /*神经网络降噪*/
#define TCFG_AUDIO_CVP_NS_MODE CVP_ANS_MODE
#define AUDIO_OUTPUT_WAY_DAC 0
#define AUDIO_OUTPUT_WAY_IIS 1
#define AUDIO_OUTPUT_WAY_FM 2
#define AUDIO_OUTPUT_WAY_HDMI 3
#define AUDIO_OUTPUT_WAY_SPDIF 4
#define AUDIO_OUTPUT_WAY_BT 5 // bt emitter
#define AUDIO_OUTPUT_WAY_DAC_IIS 6
#define AUDIO_OUTPUT_WAY_DONGLE 7
#define AUDIO_OUTPUT_WAY AUDIO_OUTPUT_WAY_DAC
#define LINEIN_INPUT_WAY LINEIN_INPUT_WAY_ADC //LINEIN_INPUT_WAY_ANALOG
#define AUDIO_OUTPUT_AUTOMUTE 0//ENABLE
#define DAC_AUTO_HIGH_Z_EN DISABLE //处理直推串音问题, 隔直不要开
/*
*系统音量类型选择
*软件数字音量是指纯软件对声音进行运算后得到的
*硬件数字音量是指dac内部数字模块对声音进行运算后输出
*/
#define VOL_TYPE_DIGITAL 0 //软件数字音量
#define VOL_TYPE_ANALOG 1 //硬件模拟音量
#define VOL_TYPE_AD 2 //联合音量(模拟数字混合调节)
#define VOL_TYPE_DIGITAL_HW 3 //硬件数字音量
#define VOL_TYPE_DIGGROUP 4 //独立通道数字音量
//每个解码通道都开启数字音量管理,音量类型为VOL_TYPE_DIGGROUP时要使能
#define SYS_DIGVOL_GROUP_EN DISABLE
#define SYS_VOL_TYPE VOL_TYPE_ANALOG
/*
*通话的时候使用数字音量
*0通话使用和SYS_VOL_TYPE一样的音量调节类型
*1通话使用数字音量调节更加平滑
*/
#define TCFG_CALL_USE_DIGITAL_VOLUME 0
// 使能改宏提示音音量使用music音量
#define APP_AUDIO_STATE_WTONE_BY_MUSIC (1)
// 0:提示音不使用默认音量; 1:默认提示音音量值
#define TONE_MODE_DEFAULE_VOLUME (0)
//*********************************************************************************//
// 充电仓配置 //
//*********************************************************************************//
#define TCFG_CHARGESTORE_ENABLE DISABLE_THIS_MOUDLE //是否支持智能充点仓
#define TCFG_TEST_BOX_ENABLE 0
#define TCFG_CHARGESTORE_PORT IO_PORTA_02 //耳机和充点仓通讯的IO口
#define TCFG_CHARGESTORE_UART_ID IRQ_UART1_IDX //通讯使用的串口号
#ifdef AUDIO_PCM_DEBUG
#ifdef TCFG_TEST_BOX_ENABLE
#undef TCFG_TEST_BOX_ENABLE
#define TCFG_TEST_BOX_ENABLE 0 //因为使用PCM使用到了串口1
#endif
#endif/*AUDIO_PCM_DEBUG*/
//*********************************************************************************//
// LED 配置 //
//******************************************************************************
#if TCFG_ADKEY_LED_IO_REUSE
//打开ADKEY和LED IO复用功能LED使用ADKEY_IO
#define TCFG_PWMLED_ENABLE DISABLE_THIS_MOUDLE //是否支持PMW LED推灯模块
#define TCFG_PWMLED_IOMODE LED_ONE_IO_MODE //LED模式单IO还是两个IO推灯
#define TCFG_PWMLED_PIN TCFG_ADKEY_PORT //LED使用的IO口
#else
#define TCFG_PWMLED_ENABLE DISABLE_THIS_MOUDLE //是否支持PMW LED推灯模块
#define TCFG_PWMLED_IOMODE LED_ONE_IO_MODE //LED模式单IO还是两个IO推灯
#define TCFG_PWMLED_PIN IO_PORTB_06 //LED使用的IO口 注意和led7是否有io冲突
#endif
//*********************************************************************************//
// UI 配置 //
//*********************************************************************************//
#define TCFG_UI_ENABLE ENABLE_THIS_MOUDLE //UI总开关
#define CONFIG_UI_STYLE STYLE_JL_LED7
#define TCFG_UI_LED7_ENABLE ENABLE_THIS_MOUDLE //UI使用LED7显示
// #define TCFG_UI_LCD_SEG3X9_ENABLE ENABLE_THIS_MOUDLE //UI使用LCD段码屏显示
// #define TCFG_LCD_ST7735S_ENABLE ENABLE_THIS_MOUDLE
// #define TCFG_LCD_ST7789VW_ENABLE ENABLE_THIS_MOUDLE
#define TCFG_SPI_LCD_ENABLE DISABLE_THIS_MOUDLE //spi lcd开关
#define TCFG_TFT_LCD_DEV_SPI_HW_NUM 1// 1: SPI1 2: SPI2 配置lcd选择的spi口
#define TCFG_LED7_RUN_RAM DISABLE_THIS_MOUDLE //led7跑ram 不屏蔽中断(需要占据2k附近ram)
//*********************************************************************************//
// 时钟配置 //
//*********************************************************************************//
#define TCFG_CLOCK_SYS_SRC SYS_CLOCK_INPUT_PLL_RCL //系统时钟源选择
#define TCFG_CLOCK_SYS_HZ 24000000 //系统时钟设置
#define TCFG_CLOCK_OSC_HZ 24000000 //外界晶振频率设置
#define TCFG_CLOCK_MODE CLOCK_MODE_ADAPTIVE
//*********************************************************************************//
// 低功耗配置 //
//*********************************************************************************//
#define TCFG_LOWPOWER_POWER_SEL PWR_LDO15 //电源模式设置可选DCDC和LDO
#define TCFG_LOWPOWER_BTOSC_DISABLE 0 //低功耗模式下BTOSC是否保持
#define TCFG_LOWPOWER_LOWPOWER_SEL 0//SLEEP_EN //SNIFF状态下芯片是否进入powerdown
#define TCFG_LOWPOWER_VDDIOM_LEVEL VDDIOM_VOL_34V
#define TCFG_LOWPOWER_VDDIOW_LEVEL VDDIOW_VOL_28V //弱VDDIO等级配置
//*********************************************************************************//
// EQ配置 //
//*********************************************************************************//
#define TCFG_EQ_ENABLE 1 //支持EQ功能,EQ总使能
#if TCFG_EQ_ENABLE
#define TCFG_BT_MUSIC_EQ_ENABLE 1 //支持蓝牙音乐EQ
#define TCFG_PHONE_EQ_ENABLE 1 //支持通话近端EQ
#define TCFG_MUSIC_MODE_EQ_ENABLE 1 //支持音乐模式EQ
#define TCFG_LINEIN_MODE_EQ_ENABLE 1 //支持linein近端EQ
#define TCFG_FM_MODE_EQ_ENABLE 1 //支持fm模式EQ
#define TCFG_SPDIF_MODE_EQ_ENABLE 1 //支持SPDIF模式EQ
#define TCFG_PC_MODE_EQ_ENABLE 1 //支持pc模式EQ
#define TCFG_AUDIO_OUT_EQ_ENABLE 0 //高低音EQ
#define TCFG_AUDIO_MIC_EFFECT_POST_EQ_ENABLE 0 //MIC音效后级EQ使能(includes DRC)
#define EQ_SECTION_MAX 20//eq 段数
#define TCFG_DYNAMIC_EQ_ENABLE 0 //动态eq使能接在eq后需输入32bit位宽数据
#endif//TCFG_EQ_ENABLE
#define TCFG_DRC_ENABLE 1 //DRC 总使能
#define TCFG_AUDIO_MDRC_ENABLE 0 //多带drc使能 0:关闭多带drc 1使能多带drc 2使能多带drc 并且 多带drc后再做一次全带的drc
#if TCFG_DRC_ENABLE
#define TCFG_BT_MUSIC_DRC_ENABLE 1 //支持蓝牙音乐DRC
#define TCFG_MUSIC_MODE_DRC_ENABLE 1 //支持音乐模式DRC
#define TCFG_LINEIN_MODE_DRC_ENABLE 1 //支持LINEIN模式DRC
#define TCFG_FM_MODE_DRC_ENABLE 1 //支持FM模式DRC
#define TCFG_SPDIF_MODE_DRC_ENABLE 1 //支持SPDIF模式DRC
#define TCFG_PC_MODE_DRC_ENABLE 1 //支持PC模式DRC
#define TCFG_AUDIO_OUT_DRC_ENABLE 0 //高低音EQ后drc
#endif//TCFG_DRC_ENABLE
//*********************************************************************************//
// 新音箱配置工具 && 调音工具 //
//*********************************************************************************//
#define TCFG_SOUNDBOX_TOOL_ENABLE DISABLE //是否支持音箱在线配置工具
#define TCFG_EFFECT_TOOL_ENABLE DISABLE //是否支持在线音效调试,使能该项还需使能EQ总使能TCFG_EQ_ENABL,
#define TCFG_NULL_COMM 0 //不支持通信
#define TCFG_UART_COMM 1 //串口通信
#define TCFG_USB_COMM 2 //USB通信
#if (TCFG_SOUNDBOX_TOOL_ENABLE || TCFG_EFFECT_TOOL_ENABLE)
#define TCFG_COMM_TYPE TCFG_USB_COMM //通信方式选择
#else
#define TCFG_COMM_TYPE TCFG_NULL_COMM
#endif
#define TCFG_TOOL_TX_PORT IO_PORT_DP //UART模式调试TX口选择
#define TCFG_TOOL_RX_PORT IO_PORT_DM //UART模式调试RX口选择
#define TCFG_ONLINE_ENABLE (TCFG_EFFECT_TOOL_ENABLE) //是否支持音效在线调试功能
/***********************************非用户配置区***********************************/
#if (TCFG_SOUNDBOX_TOOL_ENABLE || TCFG_ONLINE_ENABLE)
#if TCFG_COMM_TYPE == TCFG_UART_COMM
#undef TCFG_UDISK_ENABLE
#define TCFG_UDISK_ENABLE 0
#undef TCFG_SD0_PORTS
#define TCFG_SD0_PORTS 'B'
#endif
#endif
#include "usb_std_class_def.h"
#if (TCFG_SOUNDBOX_TOOL_ENABLE || TCFG_EFFECT_TOOL_ENABLE)
#if (TCFG_COMM_TYPE == TCFG_USB_COMM)
#define TCFG_USB_CDC_BACKGROUND_RUN ENABLE
#if (TCFG_USB_CDC_BACKGROUND_RUN && (!TCFG_PC_ENABLE))
#define TCFG_OTG_USB_DEV_EN 0
#endif
#endif
#if (TCFG_COMM_TYPE == TCFG_UART_COMM)
#define TCFG_USB_CDC_BACKGROUND_RUN DISABLE
#endif
#endif
/**********************************************************************************/
//*********************************************************************************//
// 混响配置 //
//*********************************************************************************//
#define TCFG_MIC_EFFECT_ENABLE 0//DISABLE
#define TCFG_MIC_EFFECT_START_DIR 0//开机直接启动混响
#define MIC_EFFECT_REVERB 1//BIT(0)
#define MIC_EFFECT_ECHO 2//BIT(1)
#define MIC_EFFECT_REVERB_ECHO 3//(BIT(1)|BIT(0))
#define MIC_EFFECT_MEGAPHONE 4//BIT(2)
#define TCFG_MIC_EFFECT_SEL MIC_EFFECT_REVERB
// #define TCFG_MIC_EFFECT_SEL MIC_EFFECT_ECHO
/***********************************非用户配置区***********************************/
#if TCFG_MIC_EFFECT_ENABLE
#undef EQ_SECTION_MAX
#define EQ_SECTION_MAX 25
#ifdef TCFG_AEC_ENABLE
#undef TCFG_AEC_ENABLE
#define TCFG_AEC_ENABLE 0
#endif//TCFG_AEC_ENABLE
#if TCFG_DYNAMIC_EQ_ENABLE
#undef TCFG_DYNAMIC_EQ_ENABLE
#define TCFG_DYNAMIC_EQ_ENABLE 0
#endif
#if TCFG_AUDIO_MDRC_ENABLE
#undef TCFG_AUDIO_MDRC_ENABLE
#define TCFG_AUDIO_MDRC_ENABLE 0
#endif
#if !TCFG_EQ_ENABLE
#undef TCFG_EQ_ENABLE
#define TCFG_EQ_ENABLE 1//混响必开eq
#endif
#if !TCFG_DRC_ENABLE
#undef TCFG_DRC_ENABLE
#define TCFG_DRC_ENABLE 1//混响必开drc
#endif
#endif
/**********************************************************************************/
#define TCFG_MIC_DODGE_EN 0//闪避是否使能
#define TCFG_REVERB_SAMPLERATE_DEFUAL (44100)
#define MIC_EFFECT_SAMPLERATE (44100L)
#if TCFG_MIC_EFFECT_ENABLE
#undef MIC_SamplingFrequency
#define MIC_SamplingFrequency 1
#undef MIC_AUDIO_RATE
#define MIC_AUDIO_RATE MIC_EFFECT_SAMPLERATE
#undef SPK_AUDIO_RATE
#define SPK_AUDIO_RATE TCFG_REVERB_SAMPLERATE_DEFUAL
#endif
#define TCFG_LOUDSPEAKER_ENABLE DISABLE //不能与TCFG_MIC_EFFECT_ENABLE同时打开
#define TCFG_USB_MIC_ECHO_ENABLE DISABLE //
#define TCFG_USB_MIC_DATA_FROM_MICEFFECT DISABLE //
#define TCFG_KARAOKE_EARPHONE DISABLE
//*********************************************************************************//
// g-sensor配置 //
//*********************************************************************************//
#define TCFG_GSENSOR_ENABLE 0 //gSensor使能
#define TCFG_DA230_EN 0
#define TCFG_SC7A20_EN 0
#define TCFG_STK8321_EN 0
#define TCFG_GSENOR_USER_IIC_TYPE 0 //0:软件IIC 1:硬件IIC
//*********************************************************************************//
// 系统配置 //
//*********************************************************************************//
#define TCFG_AUTO_SHUT_DOWN_TIME 0 //没有蓝牙连接自动关机时间
#define TCFG_SYS_LVD_EN 1 //电量检测使能
#define TCFG_POWER_ON_NEED_KEY 0 //是否需要按按键开机配置
#define TWFG_APP_POWERON_IGNORE_DEV 4000//上电忽略挂载设备0时不忽略非0则n毫秒忽略
#define TCFG_AUDIO_DEC_OUT_TASK 0 // 解码使用单独任务做输出
//*********************************************************************************//
// 蓝牙配置 //
//*********************************************************************************//
#define TCFG_USER_TWS_ENABLE 0 //tws功能使能
#define TCFG_USER_BLE_ENABLE 0 //BLE功能使能
#define TCFG_USER_BT_CLASSIC_ENABLE 1 //经典蓝牙功能使能
#define TCFG_BT_SUPPORT_AAC 0 //AAC格式支持
#define TCFG_USER_EMITTER_ENABLE 0 //emitter功能使能
#define TCFG_BT_SNIFF_ENABLE 0 //bt sniff 功能使能
#define USER_SUPPORT_PROFILE_SPP 0
#define USER_SUPPORT_PROFILE_HFP 1
#define USER_SUPPORT_PROFILE_A2DP 1
#define USER_SUPPORT_PROFILE_AVCTP 1
#define USER_SUPPORT_PROFILE_HID 1
#define USER_SUPPORT_PROFILE_PNP 1
#define USER_SUPPORT_PROFILE_PBAP 0
#if TCFG_USER_TWS_ENABLE
#define TCFG_BD_NUM 1 //连接设备个数配置
#define TCFG_AUTO_STOP_PAGE_SCAN_TIME 0 //配置一拖二第一台连接后自动关闭PAGE SCAN的时间(单位分钟)
#define TCFG_USER_ESCO_SLAVE_MUTE 0 //对箱通话slave出声音
#else
#define TCFG_BD_NUM 1 //连接设备个数配置
#define TCFG_AUTO_STOP_PAGE_SCAN_TIME 0 //配置一拖二第一台连接后自动关闭PAGE SCAN的时间(单位分钟)
#define TCFG_USER_ESCO_SLAVE_MUTE 0 //对箱通话slave出声音
#endif
#define BT_INBAND_RINGTONE 0 //是否播放手机自带来电铃声
#define BT_PHONE_NUMBER 1 //是否播放来电报号
#define BT_SYNC_PHONE_RING 0 //是否TWS同步播放来电铃声
#define BT_SUPPORT_DISPLAY_BAT 1 //是否使能电量检测
#define BT_SUPPORT_MUSIC_VOL_SYNC 1 //是否使能音量同步
#define TCFG_BLUETOOTH_BACK_MODE 1 //后台模式
#if (TCFG_USER_TWS_ENABLE && TCFG_BLUETOOTH_BACK_MODE) && (TCFG_BT_SNIFF_ENABLE==0) && defined(CONFIG_LOCAL_TWS_ENABLE)
#define TCFG_DEC2TWS_ENABLE 1 // 本地解码转发
#define TCFG_PCM_ENC2TWS_ENABLE 1 // pcm编码转发
#define TCFG_PCM2TWS_SBC_ENABLE 1 // pcm转发采样sbc编码
#define TCFG_TONE2TWS_ENABLE 1 // 提示音转发
#else
#define TCFG_DEC2TWS_ENABLE 0
#define TCFG_PCM_ENC2TWS_ENABLE 0
#define TCFG_PCM2TWS_SBC_ENABLE 0
#define TCFG_TONE2TWS_ENABLE 0
#endif
#if (APP_ONLINE_DEBUG && !USER_SUPPORT_PROFILE_SPP)
#error "NEED ENABLE USER_SUPPORT_PROFILE_SPP!!!"
#endif
//*********************************************************************************//
// REC 配置 //
//*********************************************************************************//
#define RECORDER_MIX_EN ENABLE//混合录音使能
#define TCFG_RECORD_FOLDER_DEV_ENABLE ENABLE//音乐播放录音区分使能
#if RECORDER_MIX_EN//限制不能同时打开
#ifdef TCFG_AEC_ENABLE
#undef TCFG_AEC_ENABLE
#define TCFG_AEC_ENABLE 0
#endif//TCFG_AEC_ENABLE
#endif
// linein配置 //
//*********************************************************************************//
#define TCFG_LINEIN_ENABLE TCFG_APP_LINEIN_EN // linein使能
// #define TCFG_LINEIN_LADC_IDX 0 // linein使用的ladc通道对应ladc_list
#define TCFG_LINEIN_LR_CH AUDIO_LIN0_LR
#define TCFG_LINEIN_CHECK_PORT IO_PORTB_03 // linein检测IO
#define TCFG_LINEIN_PORT_UP_ENABLE 1 // 检测IO上拉使能
#define TCFG_LINEIN_PORT_DOWN_ENABLE 0 // 检测IO下拉使能
#define TCFG_LINEIN_AD_CHANNEL NO_CONFIG_PORT // 检测IO是否使用AD检测
#define TCFG_LINEIN_VOLTAGE 0 // AD检测时的阀值
#define TCFG_LINEIN_INPUT_WAY LINEIN_INPUT_WAY
#define TCFG_LINEIN_MULTIPLEX_WITH_SD DISABLE // linein 检测与 SD cmd 复用
#define TCFG_LINEIN_SD_PORT 0// 0sd0 1sd1 //选择复用的sd口
//*********************************************************************************//
// music 配置 //
//*********************************************************************************//
#define TCFG_DEC_G729_ENABLE ENABLE
#define TCFG_DEC_MP3_ENABLE ENABLE
#define TCFG_DEC_WMA_ENABLE ENABLE
#define TCFG_DEC_WAV_ENABLE ENABLE
#define TCFG_DEC_FLAC_ENABLE ENABLE
#define TCFG_DEC_APE_ENABLE ENABLE
#define TCFG_DEC_M4A_ENABLE ENABLE
#define TCFG_DEC_ALAC_ENABLE ENABLE
#define TCFG_DEC_AMR_ENABLE ENABLE
#define TCFG_DEC_DTS_ENABLE ENABLE
#define TCFG_DEC_G726_ENABLE DISABLE
#define TCFG_DEC_MIDI_ENABLE DISABLE
#define TCFG_DEC_MTY_ENABLE DISABLE
#define TCFG_DEC_SBC_ENABLE ENABLE
#define TCFG_DEC_PCM_ENABLE ENABLE
#define TCFG_DEC_CVSD_ENABLE ENABLE
#define TCFG_DEC_WTGV2_ENABLE DISABLE
#define TCFG_DEC_ID3_V1_ENABLE DISABLE
#define TCFG_DEC_ID3_V2_ENABLE DISABLE
#define TCFG_DEC_DECRYPT_ENABLE DISABLE
#define TCFG_DEC_DECRYPT_KEY (0x12345678)
////<变速变调
#define TCFG_SPEED_PITCH_ENABLE DISABLE//
//*********************************************************************************//
// fm 配置 //
//*********************************************************************************//
#define TCFG_FM_ENABLE TCFG_APP_FM_EN // fm 使能
#define TCFG_FM_INSIDE_ENABLE ENABLE
#define TCFG_FM_RDA5807_ENABLE DISABLE
#define TCFG_FM_BK1080_ENABLE DISABLE
#define TCFG_FM_QN8035_ENABLE DISABLE
#define TCFG_FMIN_LADC_IDX 1 // linein使用的ladc通道对应ladc_list
#define TCFG_FMIN_LR_CH AUDIO_LIN1_LR
#define TCFG_FM_INPUT_WAY LINEIN_INPUT_WAY_ANALOG
#if (TCFG_FM_INSIDE_ENABLE && TCFG_FM_ENABLE)
#if (((TCFG_USER_TWS_ENABLE) || (RECORDER_MIX_EN) || (TCFG_MIC_EFFECT_ENABLE)))
#define TCFG_CODE_RUN_RAM_FM_MODE DISABLE_THIS_MOUDLE //FM模式 代码跑ram
#else
#define TCFG_CODE_RUN_RAM_FM_MODE ENABLE_THIS_MOUDLE //FM模式 代码跑ram
#endif
#else
#define TCFG_CODE_RUN_RAM_FM_MODE DISABLE_THIS_MOUDLE //FM模式 代码跑ram
#endif /*(TCFG_FM_INSIDE_ENABLE && TCFG_FM_ENABLE)*/
#if (TCFG_CODE_RUN_RAM_FM_MODE && TCFG_UI_ENABLE)
#undef TCFG_LED7_RUN_RAM
#define TCFG_LED7_RUN_RAM ENABLE_THIS_MOUDLE //led7跑ram 不屏蔽中断(需要占据2k附近ram)
#endif /*(TCFG_CODE_RUN_RAM_FM_MODE && TCFG_UI_ENABLE)*/
//*********************************************************************************//
// fm emitter 配置 //
//*********************************************************************************//
#define TCFG_APP_FM_EMITTER_EN DISABLE_THIS_MOUDLE
#define TCFG_FM_EMITTER_INSIDE_ENABLE DISABLE
#define TCFG_FM_EMITTER_AC3433_ENABLE DISABLE
#define TCFG_FM_EMITTER_QN8007_ENABLE DISABLE
#define TCFG_FM_EMITTER_QN8027_ENABLE DISABLE
//*********************************************************************************//
// rtc 配置 //
//*********************************************************************************//
#define TCFG_RTC_ENABLE TCFG_APP_RTC_EN
#define TCFG_USE_VIRTUAL_RTC 0//ENABLE //假时钟
//*********************************************************************************//
// SPDIF & ARC 配置 //
//*********************************************************************************//
#define TCFG_SPDIF_ENABLE TCFG_APP_SPDIF_EN
#define TCFG_SPDIF_OUTPUT_ENABLE ENABLE
#define TCFG_HDMI_ARC_ENABLE ENABLE
#define TCFG_HDMI_CEC_PORT IO_PORTA_02
//*********************************************************************************//
// IIS 配置 //
//*********************************************************************************//
#define TCFG_IIS_ENABLE DISABLE_THIS_MOUDLE //
#define TCFG_IIS_OUTPUT_EN ENABLE //
#define TCFG_IIS_OUTPUT_PORT ALINK1_PORTA
#define TCFG_IIS_OUTPUT_CH_NUM 1 //0:mono,1:stereo
#define TCFG_IIS_OUTPUT_SR 44100
#define TCFG_IIS_OUTPUT_DATAPORT_SEL (BIT(0))
#define TCFG_IIS_INPUT_EN DISABLE//
#define TCFG_IIS_INPUT_PORT ALINK1_PORTA
#define TCFG_IIS_INPUT_CH_NUM 1 //0:mono,1:stereo
#define TCFG_IIS_INPUT_SR (44100l)
#define TCFG_IIS_INPUT_DATAPORT_SEL (BIT(0))
//*********************************************************************************//
// fat 文件系统配置 //
//*********************************************************************************//
#define CONFIG_FATFS_ENABLE ENABLE
//*********************************************************************************//
// encoder 配置 //
//*********************************************************************************//
#define TCFG_ENC_CVSD_ENABLE ENABLE
#define TCFG_ENC_MSBC_ENABLE ENABLE
#define TCFG_ENC_G726_ENABLE ENABLE
#define TCFG_ENC_MP3_ENABLE ENABLE
#define TCFG_ENC_ADPCM_ENABLE ENABLE
#define TCFG_ENC_PCM_ENABLE ENABLE
#define TCFG_ENC_SBC_ENABLE ENABLE
#define TCFG_ENC_OPUS_ENABLE DISABLE
#define TCFG_ENC_SPEEX_ENABLE DISABLE
//*********************************************************************************//
//ali ai profile
#define DUEROS_DMA_EN 0 //not surport
#define TRANS_DATA_EN 0 //not surport
#define ANCS_CLIENT_EN 0
#if (DUEROS_DMA_EN || TRANS_DATA_EN || ANCS_CLIENT_EN)
#define BT_FOR_APP_EN 1
#else
#define BT_FOR_APP_EN 0
#endif
//*********************************************************************************//
//*********************************************************************************//
// 电源切换配置 //
//*********************************************************************************//
#define CONFIG_PHONE_CALL_USE_LDO15 1
//*********************************************************************************//
// 解码叠加配置
//*********************************************************************************//
#define DEC_MIX_ENABLE 0
//*********************************************************************************//
// 人声消除使能
//*********************************************************************************//
#define AUDIO_VOCAL_REMOVE_EN 0
///*********************************************************************************//
// 等响度 开启后,需要固定模拟音量,调节软件数字音量
// 等响度使用eq实现同个数据流中若打开等响度请开eq总使能关闭其他eq,例如蓝牙模式eq
//*********************************************************************************//
#define AUDIO_EQUALLOUDNESS_CONFIG 0 //等响度, 不支持四声道
///*********************************************************************************//
// 环绕音效使能
//*********************************************************************************//
#define AUDIO_SURROUND_CONFIG 0//3d环绕
#define AUDIO_VBASS_CONFIG 0//虚拟低音,虚拟低音不支持四声道
#define AUDIO_SPECTRUM_CONFIG 0 //频响能量值获取接口
#define AUDIO_MIDI_CTRL_CONFIG 0 //midi电子琴接口使能
#define TCFG_EQ_DIVIDE_ENABLE 0 // 四声道eq是否独立 0 使用同个eq效果
//*********************************************************************************//
// 编译警告 //
//*********************************************************************************//
#if ((ANCS_CLIENT_EN || TRANS_DATA_EN || ((TCFG_ONLINE_TX_PORT == IO_PORT_DP) && TCFG_ONLINE_ENABLE) ||((TCFG_COMM_TYPE == TCFG_UART_COMM) && TCFG_SOUNDBOX_TOOL_ENABLE)) && (TCFG_PC_ENABLE || TCFG_UDISK_ENABLE || TCFG_SD0_PORTS == 'E'))
// #error "eq online adjust enable, plaease close usb marco and sdcard port not e!!!"
#endif// ((TRANS_DATA_EN || TCFG_ONLINE_ENABLE) && (TCFG_PC_ENABLE || TCFG_UDISK_ENABLE))
#if ((TCFG_COMM_TYPE == TCFG_UART_COMM) && TCFG_ONLINE_ENABLE) && (TCFG_PC_ENABLE || TCFG_UDISK_ENABLE)
#error "eq online adjust enable, plaease close usb marco"
#endif// ((TCFG_ONLINE_ENABLE) && (TCFG_PC_ENABLE || TCFG_UDISK_ENABLE))
#if ((TCFG_COMM_TYPE == TCFG_UART_COMM) && TCFG_SOUNDBOX_TOOL_ENABLE ) && TCFG_PC_ENABLE
#error "soundbox tool enable, plaease close pc marco"
#endif// (TCFG_SOUNDBOX_TOOL_ENABLE) && (TCFG_PC_ENABLE)
#if TCFG_UI_ENABLE
#if ((TCFG_SPI_LCD_ENABLE && TCFG_CODE_FLASH_ENABLE) && (TCFG_FLASH_DEV_SPI_HW_NUM == TCFG_TFT_LCD_DEV_SPI_HW_NUM))
#error "flash spi port == lcd spi port, please close one !!!"
#endif//((TCFG_SPI_LCD_ENABLE && TCFG_CODE_FLASH_ENABLE) && (TCFG_FLASH_DEV_SPI_HW_NUM == TCFG_TFT_LCD_DEV_SPI_HW_NUM))
#endif//TCFG_UI_ENABLE
#if((TRANS_DATA_EN + DUEROS_DMA_EN + ANCS_CLIENT_EN) > 1)
#error "they can not enable at the same time,just select one!!!"
#endif//(TRANS_DATA_EN && DUEROS_DMA_EN)
#if (TCFG_DEC2TWS_ENABLE && (TCFG_MIC_EFFECT_ENABLE ||TCFG_APP_RECORD_EN || TCFG_APP_RTC_EN ||TCFG_DRC_ENABLE))
#error "对箱支持音源转发,请关闭混响录音等功能 !!!"
#endif// (TCFG_DEC2TWS_ENABLE && (TCFG_MIC_EFFECT_ENABLE ||TCFG_APP_RECORD_EN || TCFG_APP_RTC_EN ||TCFG_DRC_ENABLE))
#if (TCFG_MIC_EFFECT_ENABLE && (TCFG_DEC_APE_ENABLE || TCFG_DEC_FLAC_ENABLE || TCFG_DEC_DTS_ENABLE))
#error "无损格式+混响暂时不支持同时打开 !!!"
#endif//(TCFG_MIC_EFFECT_ENABLE && (TCFG_DEC_APE_ENABLE || TCFG_DEC_FLAC_ENABLE || TCFG_DEC_DTS_ENABLE))
#if (TCFG_REVERB_DODGE_EN && (USER_DIGITAL_VOLUME_ADJUST_ENABLE == 0))
#error "使用闪避功能,打开自定义数字音量调节 !!!"
#endif
#if ((TCFG_NORFLASH_DEV_ENABLE || TCFG_NOR_FS_ENABLE) && TCFG_UI_ENABLE)
#error "引脚复用问题使用norflash需要关闭UI "
#endif
#if ((TCFG_APP_RECORD_EN) && (TCFG_USER_TWS_ENABLE))
#error "TWS 暂不支持录音功能"
#endif
#if ((AUDIO_EQUALLOUDNESS_CONFIG) && (SYS_VOL_TYPE == VOL_TYPE_ANALOG))
#error "开启等响度 需要使用数字音量"
#endif
#if ((TCFG_APP_FM_EN) && (TCFG_MIC_EFFECT_ENABLE) && (RECORDER_MIX_EN))
#error "FM模式下开混响暂不支持混合录音"
#endif
#if AUDIO_EQUALLOUDNESS_CONFIG
#if (TCFG_EQ_ENABLE == 0)
#error "开启等响度 需要打开EQ总使能"
#endif
#if (TCFG_EQ_ENABLE && TCFG_BT_MUSIC_EQ_ENABLE)
#error "开启等响度 需要打开EQ总使能关闭其他模式的eq,例如关闭蓝牙播歌eq"
#endif
#endif
#if TCFG_MIC_DODGE_EN
#if !SYS_DIGVOL_GROUP_EN
#error "请使能软件数字音量SYS_DIGVOL_GROUP_EN"
#endif
#endif
#if TCFG_DYNAMIC_EQ_ENABLE && !TCFG_DRC_ENABLE //动态eq使能后需接入drc进行幅度控制
#error "动态eq使能后需使能TCFG_DRC_ENABLE接入drc进行幅度控制"
#endif
#if TCFG_DYNAMIC_EQ_ENABLE && !TCFG_AUDIO_MDRC_ENABLE
#error "动态eq使能后需使能TCFG_AUDIO_MDRC_ENABLE 为1接入多带drc进行幅度控制"
#endif
#if SOUND_TRACK_2_P_X_CH_CONFIG && LINEIN_MODE_SOLE_EQ_EN
#error "2.1/2.2声道不支持 linein模式独立的eq\drc配置"
#endif
#if TCFG_EQ_DIVIDE_ENABLE && (TCFG_AUDIO_DAC_CONNECT_MODE != DAC_OUTPUT_FRONT_LR_REAR_LR)
#error "eq效果独立需使能四声道宏DAC_OUTPUT_FRONT_LR_REAR_LR"
#endif
#if SOUND_TRACK_2_P_X_CH_CONFIG && !TCFG_EQ_DIVIDE_ENABLE
#error "2.1/2.2声道需使能宏TCFG_EQ_DIVIDE_ENABLE"
#endif
#if TCFG_MIC_VOICE_CHANGER_ENABLE && (TCFG_MIC_EFFECT_SEL != MIC_EFFECT_ECHO)
#error "变声目前支持加载ECHO音效下"
#endif
#if TCFG_USER_TWS_ENABLE && TCFG_MIC_EFFECT_ENABLE &&((TCFG_MIC_EFFECT_SEL != MIC_EFFECT_ECHO) && (TCFG_MIC_EFFECT_SEL != MIC_EFFECT_MEGAPHONE))
#error "tws时只支持ehco混响或者megaphone"
#endif
///<<<<所有宏定义不要在编译警告后面定义!!!!!!!!!!!!!!!!!!!!!!!!!!
///<<<<所有宏定义不要在编译警告后面定义!!!!!!!!!!!!!!!!!!!!!!!!!!
//*********************************************************************************//
// 配置结束 //
//*********************************************************************************//
#endif //CONFIG_BOARD_AC695X_DEMO
#endif //CONFIG_BOARD_AC695X_DEMO_CFG_H