mcu_ab568x/userboot240328/app/platform/header/config_extra.h
2025-05-30 18:03:10 +08:00

513 lines
16 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.

#ifndef __CONFIG_EXTRA_H__
#define __CONFIG_EXTRA_H__
/*****************************************************************************
* Module : 系统功能配置
*****************************************************************************/
#ifndef WATCH320_TEST_EN
#define WATCH320_TEST_EN 0
#endif
#ifndef SYS_MODE_BREAKPOINT_EN
#define SYS_MODE_BREAKPOINT_EN 0
#endif
#ifndef SPIFLASH_SPEED_UP_EN
#define SPIFLASH_SPEED_UP_EN 1
#endif
#ifndef WARNING_WAVRES_PLAY
#define WARNING_WAVRES_PLAY 0
#endif
#ifndef MIC_EQ_EN
#define MIC_EQ_EN 0
#endif
#if (GUI_SELECT == GUI_TFT_320_ST77916)
#define GUI_SCREEN_WIDTH 320
#define GUI_SCREEN_HEIGHT 385
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_360_GC9C01)
#define GUI_SCREEN_WIDTH 360
#define GUI_SCREEN_HEIGHT 360
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_OLED_466_ICNA3310B)
#define GUI_SCREEN_WIDTH 466
#define GUI_SCREEN_HEIGHT 466
#define GUI_SCREEN_OFS_X 6
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_ST7789)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 296
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 12
#elif (GUI_SELECT == GUI_TFT_240_296_GCGD3030)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 296
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_296_JD9853A)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 296
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_296_JD9853)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 296
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_128_160_XSJ3023HSD)
#define GUI_SCREEN_WIDTH 128//128
#define GUI_SCREEN_HEIGHT 160
#define GUI_SCREEN_OFS_X 0//0//56
#define GUI_SCREEN_OFS_Y 0//0 69
#elif (GUI_SELECT == GUI_TFT_240_240_NV3002B1N)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 240
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_240_GC9307)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 240
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_240_ST7789P3)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 240
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#elif (GUI_SELECT == GUI_TFT_240_296_BOE7789P3)
#define GUI_SCREEN_WIDTH 240
#define GUI_SCREEN_HEIGHT 296
#define GUI_SCREEN_OFS_X 0
#define GUI_SCREEN_OFS_Y 0
#else
#define GUI_SCREEN_WIDTH 0
#define GUI_SCREEN_HEIGHT 0
#endif
#define GUI_SCREEN_CENTER_X (GUI_SCREEN_WIDTH / 2)
#define GUI_SCREEN_CENTER_Y (GUI_SCREEN_HEIGHT / 2)
#if (TP_SELECT == TP_CST8X)
#define TP_IIC_ADDR 0x15
#define TP_IIC_UPDATE_ADDR 0x6A
#elif (TP_SELECT == TP_CHSC6X)
#define TP_IIC_ADDR 0x2E
#endif
/*****************************************************************************
* Module : 音乐功能配置
*****************************************************************************/
#if !FUNC_MUSIC_EN
#undef MUSIC_UDISK_EN
#undef MUSIC_SDCARD_EN
#undef MUSIC_SDCARD1_EN
#undef MUSIC_WAV_SUPPORT
#undef MUSIC_WMA_SUPPORT
#undef MUSIC_APE_SUPPORT
#undef MUSIC_FLAC_SUPPORT
#undef MUSIC_SBC_SUPPORT
#undef MUSIC_ID3_TAG_EN
#undef MUSIC_BREAKPOINT_EN
#define MUSIC_UDISK_EN 0
#define MUSIC_SDCARD_EN 0
#define MUSIC_SDCARD1_EN 0
#define MUSIC_WAV_SUPPORT 0
#define MUSIC_WMA_SUPPORT 0
#define MUSIC_APE_SUPPORT 0
#define MUSIC_FLAC_SUPPORT 0
#define MUSIC_SBC_SUPPORT 0
#define MUSIC_ID3_TAG_EN 0
#define MUSIC_BREAKPOINT_EN 0
#endif // FUNC_MUSIC_EN
#if !MUSIC_BREAKPOINT_EN
#undef MUSIC_AB_BREAKPOINT_EN
#define MUSIC_AB_BREAKPOINT_EN 0
#endif
#if !CHARGE_EN
#undef CHARGE_TRICK_EN
#undef CHARGE_DC_IN
#undef CHARGE_DC_NOT_PWRON
#define CHARGE_TRICK_EN 0
#define CHARGE_DC_NOT_PWRON 0
#define CHARGE_DC_IN() 0
#endif
#if !EARPHONE_DETECT_EN
#undef SDCMD_MUX_DETECT_EARPHONE
#undef EARPHONE_DETECT_INIT
#undef EARPHONE_IS_ONLINE
#undef IS_DET_EAR_BUSY
#define EARPHONE_DETECT_INIT()
#define SDCMD_MUX_DETECT_EARPHONE 0
#define EARPHONE_IS_ONLINE() 0
#define IS_DET_EAR_BUSY() 0
#endif
#ifndef PWROFF_PRESS_TIME
#define PWROFF_PRESS_TIME 3 //1:大约1秒 3: 1.5s, 6: 2s, 9: 2.5s, 12: 3s
#endif // PWROFF_PRESS_TIME
#ifndef PWRON_PRESS_TIME
#define PWRON_PRESS_TIME 1500 //1.5s
#endif // PWRON_PRESS_TIME
#ifndef USER_MULTI_KEY_TIME
#define USER_MULTI_KEY_TIME 1
#endif // USER_MULTI_KEY_TIME
#ifndef SYS_LIMIT_VOLUME
#define SYS_LIMIT_VOLUME SYS_INIT_VOLUME
#endif // SYS_LIMIT_VOLUME
#ifndef LINEIN_2_PWRDOWN_TONE_EN
#define LINEIN_2_PWRDOWN_TONE_EN 0 //插入Linein直接关机是否播放关机提示音。
#endif // LINEIN_2_PWRDOWN_TONE_EN
#ifndef LPWR_WARING_TIMES
#define LPWR_WARING_TIMES 0xff
#endif // LPWR_WARING_TIMES
#if !BUZZER_EN
#undef BUZZER_INIT
#define BUZZER_INIT()
#undef BUZZER_ON
#define BUZZER_ON()
#undef BUZZER_OFF
#define BUZZER_OFF()
#endif
#ifndef PWRON_FRIST_BAT_EN
#define PWRON_FRIST_BAT_EN 1
#endif // PWRON_FRIST_BAT_EN
#if ((GUI_SELECT & DISPLAY_LCD) == DISPLAY_LCD)
#define GUI_LCD_EN 1
#else
#define GUI_LCD_EN 0
#undef MUSIC_NAVIGATION_EN
#define MUSIC_NAVIGATION_EN 0
#endif
#if !LOUDSPEAKER_MUTE_EN
#undef LOUDSPEAKER_MUTE_INIT
#define LOUDSPEAKER_MUTE_INIT()
#undef LOUDSPEAKER_MUTE_DIS
#define LOUDSPEAKER_MUTE_DIS()
#undef LOUDSPEAKER_MUTE
#define LOUDSPEAKER_MUTE()
#undef LOUDSPEAKER_UNMUTE
#define LOUDSPEAKER_UNMUTE()
#undef LOUDSPEAKER_UNMUTE_DELAY
#define LOUDSPEAKER_UNMUTE_DELAY 0
#undef LOUDSPEAKER_MUTE_PORT
#define LOUDSPEAKER_MUTE_PORT IO_NONE
#endif
#if !AMP_CTRL_AB_D_EN
#undef AMP_CTRL_AB_D_PORT
#undef AMP_CTRL_AB_D_TYPE
#undef AMPLIFIER_SEL_INIT
#undef AMPLIFIER_SEL_D
#undef AMPLIFIER_SEL_AB
#define AMP_CTRL_AB_D_PORT IO_NONE
#define AMP_CTRL_AB_D_TYPE 0
#define AMPLIFIER_SEL_INIT()
#define AMPLIFIER_SEL_D()
#define AMPLIFIER_SEL_AB()
#endif
#ifndef IR_INPUT_NUM_MAX
#define IR_INPUT_NUM_MAX 999 //最大输入数字9999
#endif // IR_INPUT_NUM_MAX
#if !VBAT_DETECT_EN
#undef LPWR_WARNING_VBAT
#undef LPWR_OFF_VBAT
#define LPWR_WARNING_VBAT 0
#define LPWR_OFF_VBAT 0
#endif
/*****************************************************************************
* Module : 录音功能配置
*****************************************************************************/
#if !FUNC_REC_EN
#undef AUX_REC_EN
#undef MIC_REC_EN
#undef REC_TYPE_SEL
#undef REC_AUTO_PLAY
#undef REC_FAST_PLAY
#undef BT_REC_EN
#undef BT_HFP_REC_EN
#undef REC_STOP_MUTE_1S
#define AUX_REC_EN 0
#define MIC_REC_EN 0
#define REC_AUTO_PLAY 0
#define REC_FAST_PLAY 0
#define BT_REC_EN 0
#define BT_HFP_REC_EN 0
#define REC_TYPE_SEL REC_NO
#define REC_STOP_MUTE_1S 0
#endif //FUNC_REC_EN
#if ((GUI_SELECT & DISPLAY_LCD) == DISPLAY_LCD)
#define GUI_LCD_EN 1
#else
#define GUI_LCD_EN 0
#endif
#ifndef MUSIC_SDCARD1_EN
#define MUSIC_SDCARD1_EN 0
#endif
/*****************************************************************************
* Module : 蓝牙相关配置
*****************************************************************************/
#ifndef BT_A2DP_RECON_EN
#define BT_A2DP_RECON_EN 0
#endif
#ifndef BT_BACKSTAGE_EN
#define BT_BACKSTAGE_EN 1 //蓝牙后台管理
#endif
#ifndef BT_BACKSTAGE_MUSIC_EN
#define BT_BACKSTAGE_MUSIC_EN 1 //蓝牙音乐支持后台播放
#endif
#if !LE_EN
#undef LE_PAIR_EN
#undef LE_SM_SC_EN
#undef LE_AB_LINK_APP_EN
#undef LE_BQB_RF_EN
#define LE_PAIR_EN 0
#define LE_SM_SC_EN 0
#define LE_AB_LINK_APP_EN 0
#define LE_BQB_RF_EN 0
#endif
#if LE_BQB_RF_EN
#undef BT_FCC_TEST_EN
#undef USER_KEY_QDEC_EN
#define BT_FCC_TEST_EN 1 //LE_BQB和FCC共用huart_init
#define USER_KEY_QDEC_EN 0
#endif
#if LE_EN
#define BT_DUAL_MODE_EN 1
#else
#define BT_DUAL_MODE_EN 0
#endif
#ifndef BT_PAIR_SLEEP_EN
#define BT_PAIR_SLEEP_EN 1
#endif // BT_PAIR_SLEEP_EN
#ifndef BT_HFP_RINGS_BEFORE_NUMBER
#define BT_HFP_RINGS_BEFORE_NUMBER 0
#endif
#if BT_FCC_TEST_EN //FCC 默认PB3 (USB_DP) 波特率1500000通信, 关闭用到PB3的程序
#undef FUNC_USBDEV_EN
#undef MUSIC_UDISK_EN
#define FUNC_USBDEV_EN 0
#define MUSIC_UDISK_EN 0
#if (UART0_PRINTF_SEL == PRINTF_PB3)
#undef UART0_PRINTF_SEL
#define UART0_PRINTF_SEL PRINTF_NONE
#endif
#endif
#if BT_FCC_TEST_EN
#define WORK_MODE MODE_FCC_TEST
#elif BT_BQB_RF_EN
#define WORK_MODE MODE_BQB_RF
#elif BT_BQB_PROFILE_EN
#define WORK_MODE MODE_BQB_PROFILE
#elif BT_CBT_TEST_EN
#define WORK_MODE MODE_CBT_TEST
#else
#define WORK_MODE MODE_NORMAL
#endif
#if !BT_HID_EN
#undef BT_HID_TYPE
#undef BT_HID_MENU_EN
#undef BT_HID_DISCON_DEFAULT_EN
#define BT_HID_TYPE 0
#define BT_HID_MENU_EN 0
#define BT_HID_DISCON_DEFAULT_EN 0
#endif
/*****************************************************************************
* Module : uart0 printf 功能自动配置(自动关闭SD卡USB)
*****************************************************************************/
#if (UART0_PRINTF_SEL == PRINTF_PB3)
#undef FUNC_USBDEV_EN
#undef MUSIC_UDISK_EN
#define FUNC_USBDEV_EN 0
#define MUSIC_UDISK_EN 0
#elif (UART0_PRINTF_SEL == PRINTF_NONE)
//关闭所以打印信息
#undef printf
#undef vprintf
#undef print_r
#undef print_r16
#undef print_r32
#undef printk
#undef vprintk
#undef print_kr
#undef print_kr16
#undef print_kr32
#define printf(...)
#define vprintf(...)
#define print_r(...)
#define print_r16(...)
#define print_r32(...)
#define printk(...)
#define vprintk(...)
#define print_kr(...)
#define print_kr16(...)
#define print_kr32(...)
#endif
#if !MUSIC_SDCARD_EN
#undef SDCLK_MUX_DETECT_SD
#undef SD_DETECT_INIT
#undef SD_IS_ONLINE
#undef IS_DET_SD_BUSY
#define SD_DETECT_INIT()
#define SDCLK_MUX_DETECT_SD 0
#define SD_IS_ONLINE() 0
#define IS_DET_SD_BUSY() 0
#endif
#if !MUSIC_SDCARD1_EN
#undef SD1_DETECT_INIT
#undef SD1_IS_ONLINE
#undef IS_DET_SD1_BUSY
#define SD1_DETECT_INIT()
#define SD1_IS_ONLINE() 0
#define IS_DET_SD1_BUSY() 0
#endif
/*****************************************************************************
* Module : usb device 功能配置
*****************************************************************************/
#if !FUNC_USBDEV_EN
#undef UDE_STORAGE_EN
#undef UDE_SPEAKER_EN
#undef UDE_HID_EN
#undef UDE_MIC_EN
#undef UDE_ENUM_TYPE
#define UDE_STORAGE_EN 0
#define UDE_SPEAKER_EN 0
#define UDE_HID_EN 0
#define UDE_MIC_EN 0
#define UDE_ENUM_TYPE 0
#else
#define UDE_ENUM_TYPE (UDE_STORAGE_EN*0x01 + UDE_SPEAKER_EN*0x02 + UDE_HID_EN*0x04 + UDE_MIC_EN*0x08)
#endif
/*****************************************************************************
* Module : 提示音配置
*****************************************************************************/
#if (!WARNING_TONE_EN)
#undef WARNING_POWER_ON
#undef WARNING_POWER_OFF
#undef WARNING_BT_INCALL
#undef BT_HFP_INBAND_RING_EN
#define WARNING_POWER_ON 0
#define WARNING_POWER_OFF 0
#define WARNING_BT_INCALL 0
#define BT_HFP_INBAND_RING_EN 0
#endif
#if ((!MUSIC_UDISK_EN) && (!MUSIC_SDCARD_EN) && (!MUSIC_SDCARD1_EN))
#undef USB_SD_UPDATE_EN
#define USB_SD_UPDATE_EN 0
#endif
#ifndef UPD_FILENAME
#define UPD_FILENAME "fw5000.upd"
#endif
#if ((SD0_MAPPING == SD0MAP_G1) || (SD0_MAPPING == SD0MAP_G4) || (SD0_MAPPING == SD0MAP_G5) || (SD0_MAPPING == SD0MAP_G6))
#define SDCLK_AD_CH ADCCH_PA6
#elif (SD0_MAPPING == SD0MAP_G2)
#define SDCLK_AD_CH ADCCH_PB1
#else
#define SDCLK_AD_CH ADCCH_PE6
#endif
#define USB_SUPPORT_EN (MUSIC_UDISK_EN | FUNC_USBDEV_EN)
#define SD_SUPPORT_EN (MUSIC_SDCARD_EN | MUSIC_SDCARD1_EN)
#if MUSIC_SDCARD_EN
#define SDCMD_MUX_DETECT_EN 1
#define SDCLK_MUX_DETECT_EN 1
#else
#define SDCMD_MUX_DETECT_EN 0
#define SDCLK_MUX_DETECT_EN 0
#endif // MUSIC_SDCARD_EN
#if !SD_SUPPORT_EN
#undef UDE_STORAGE_EN
#define UDE_STORAGE_EN 0
#endif
/*****************************************************************************
* Module : 有冲突或功能上不能同时打开的宏
*****************************************************************************/
/*****************************************************************************
* Module : 计算FunctionKey
*****************************************************************************/
/*****************************************************************************
* Module : 传感器选择
*****************************************************************************/
#define SENSOR_STEP_NULL 0
#define SENSOR_STEP_EN 0x100
#define SENSOR_STEP_SC7A20 (SENSOR_STEP_EN | 0x0)
#define SENSOR_STEP_MSA310 (SENSOR_STEP_EN | 0x1)
#define SENSOR_STEP_DA267S (SENSOR_STEP_EN | 0x2)
#define SENSOR_HR_NULL 0
#define SENSOR_HR_EN 0x200
#define SENSOR_HR_VCARE_9201 (SENSOR_HR_EN | 0x0) //VCARE 9201心率血氧传感器
#define SENSOR_HR_TYHX_HRS3300 (SENSOR_HR_EN | 0x1) //天易合芯HRS3300心率血压传感器
#define SENSOR_HR_TYHX_HX3605 (SENSOR_HR_EN | 0x2) //天易合芯HX3605心率血氧传感器
#define SENSOR_GEO_NULL 0
#define SENSOR_GEO_EN 0x300
#endif // __CONFIG_EXTRA_H__