Amplifier_AW87579/Inc/Amplifier_AW87579_enum.h

276 lines
6.4 KiB
C

//
// Created by ilya on 20.06.24.
//
#ifndef AMPLIFIER_AW87579_ENUM_H
#define AMPLIFIER_AW87579_ENUM_H
/*
* Battery safe guard deglitch time.
*/
typedef enum {
BAT_SFGD_DEGLITCH_1ms = 0b00,
BAT_SFGD_DEGLITCH_500us = 0b01,
BAT_SFGD_DEGLITCH_200us = 0b10,
BAT_SFGD_DEGLITCH_Disable = 0b11
}eBAT_SFGD_DEGLITCH;
/*
* Battery voltage when enter into battery safe_guard
* mode.
*/
typedef enum {
BAT_SFGD_VTH_3_3V = 0b00,
BAT_SFGD_VTH_3_4V = 0b01,
BAT_SFGD_VTH_3_5V = 0b10,
BAT_SFGD_VTH_3_6V = 0b11
}eBAT_SFGD_VTH;
/*
* Maxim output level when enter into battery safe_guard
* mode
*/
typedef enum {
BAT_SFGD_LEVEL_5V = 0b00,
BAT_SFGD_LEVEL_5_5V = 0b01,
BAT_SFGD_LEVEL_6V = 0b10,
BAT_SFGD_LEVEL_6_5V = 0b11
}eBAT_SFGD_LEVEL;
/*
* BOOST OUTPUT VOLTAGE set
*/
typedef enum {
BST_VOUT_6_5V = 0b00000,
BST_VOUT_6_75V = 0b00001,
BST_VOUT_7V = 0b00010,
BST_VOUT_7_25V = 0b00011,
BST_VOUT_7_5V = 0b00100,
BST_VOUT_7_75V = 0b00101,
BST_VOUT_8V = 0b00110,
BST_VOUT_8_25V = 0b00111,
BST_VOUT_8_5V = 0b01000,
BST_VOUT_8_75V = 0b01001,
BST_VOUT_9V = 0b01010,
BST_VOUT_9_25V = 0b01011,
BST_VOUT_9_5V = 0b01100,
BST_VOUT_9_75V = 0b01101,
BST_VOUT_10V = 0b01110,
BST_VOUT_10_25V = 0b01111,
BST_VOUT_10_5V = 0b10000,
BST_VOUT_10_75V = 0b10001,
BST_VOUT_11V = 0b10010,
BST_VOUT_11_25V = 0b10011,
BST_VOUT_11_5V = 0b10100,
BST_VOUT_11_75V = 0b10101,
BST_VOUT_12V = 0b10110,
}eBST_VOUT;
/*
* BOOST peak current limit
*/
typedef enum {
BST_IPEAK_2A = 0b0010,
BST_IPEAK_2_25A = 0b0011,
BST_IPEAK_2_5A = 0b0100,
BST_IPEAK_2_75A = 0b0101,
BST_IPEAK_3A = 0b0110,
BST_IPEAK_3_25A = 0b0111,
BST_IPEAK_3_5A = 0b1000,
BST_IPEAK_3_75A = 0b1001,
BST_IPEAK_4A = 0b1010,
BST_IPEAK_4_25A = 0b1011,
BST_IPEAK_4_5A = 0b1100,
}eBST_IPEAK;
/*
* Speaker Protection output Power Leve
*/
typedef enum {
AGC3OP_0_5W_8ohm_OR_0_67W_6ohm = 0b0000,
AGC3OP_0_6W_8ohm_OR_0_8W_6ohm = 0b0001,
AGC3OP_0_7W_8ohm_OR_0_93W_6ohm = 0b0010,
AGC3OP_0_8W_8ohm_OR_1_07W_6ohm = 0b0011,
AGC3OP_0_9W_8ohm_OR_1_2W_6ohm = 0b0100,
AGC3OP_1W_8ohm_OR_1_33W_6ohm = 0b0101,
AGC3OP_1_1W_8ohm_OR_1_47W_6ohm = 0b0110,
AGC3OP_1_2W_8ohm_OR_1_6W_6ohm = 0b0111,
AGC3OP_1_3W_8ohm_OR_1_73W_6ohm = 0b1000,
AGC3OP_1_4W_8ohm_OR_1_87W_6ohm = 0b1001,
AGC3OP_1_5W_8ohm_OR_2W_6ohm = 0b1010,
AGC3OP_1_6W_8ohm_OR_2_13W_6ohm = 0b1011,
AGC3OP_1_7W_8ohm_OR_2_27W_6ohm = 0b1100,
AGC3OP_1_8W_8ohm_OR_2_4W_6ohm = 0b1101,
AGC3OP_1_9W_8ohm_OR_2_53W_6ohm = 0b1110,
AGC3OP_2W_8ohm_OR_2_67W_6ohm = 0b1111,
}AGC3_OUTPUT_POWER;
typedef enum {
PA_GAIN_0dB = 0b00000,
PA_GAIN_1_5dB = 0b00001,
PA_GAIN_3dB = 0b00010,
PA_GAIN_4_5dB = 0b00011,
PA_GAIN_6dB = 0b00100,
PA_GAIN_7_5dB = 0b00101,
PA_GAIN_9dB = 0b00110,
PA_GAIN_10_5dB = 0b00111,
PA_GAIN_12dB = 0b01000,
PA_GAIN_13_5dB = 0b01001,
PA_GAIN_15dB = 0b01010,
PA_GAIN_16_5dB = 0b01011,
PA_GAIN_18dB = 0b01100,
PA_GAIN_19_5dB = 0b01101,
PA_GAIN_21dB = 0b01110,
PA_GAIN_22_5dB = 0b01111,
PA_GAIN_24dB = 0b10000,
PA_GAIN_25_5dB = 0b10001,
PA_GAIN_27dB = 0b10010,
}PA_GAIN;
/*
* Total 13.5dB release time
*/
typedef enum {
AGC3_REL_TIME_5_12ms_dB = 0b000,
AGC3_REL_TIME_10_24ms_dB = 0b001,
AGC3_REL_TIME_20_48ms_dB = 0b010,
AGC3_REL_TIME_40_56ms_dB = 0b011,
AGC3_REL_TIME_81_92ms_dB = 0b100,
AGC3_REL_TIME_163_84ms_dB = 0b101,
AGC3_REL_TIME_327_68ms_dB = 0b110,
AGC3_REL_TIME_655_36ms_dB = 0b111,
}eAGC3_REL_TIME;
/*
* Total 13.5dB attack time
*/
typedef enum {
AGC3_ATT_TIME_1_28ms_dB = 0b000,
AGC3_ATT_TIME_2_56ms_dB = 0b001,
AGC3_ATT_TIME_10_24ms_dB = 0b010,
AGC3_ATT_TIME_40_96ms_dB = 0b011,
AGC3_ATT_TIME_82ms_dB = 0b100,
AGC3_ATT_TIME_164ms_dB = 0b101,
AGC3_ATT_TIME_328ms_dB = 0b110,
AGC3_ATT_TIME_656ms_dB = 0b111,
}eAGC3_ATT_TIME;
/*
* AGC2 Protection output Power Leve
*/
typedef enum {
AGC2OP_1W_8ohm_OR_1_33W_6ohm = 0b0000,
AGC2OP_1_2W_8ohm_OR_1_6W_6ohm = 0b0001,
AGC2OP_1_4W_8ohm_OR_1_87W_6ohm = 0b0010,
AGC2OP_1_6W_8ohm_OR_2_13W_6ohm = 0b0011,
AGC2OP_1_8W_8ohm_OR_2_4W_6ohm = 0b0100,
AGC2OP_2W_8ohm_OR_2_67W_6ohm = 0b0101,
AGC2OP_2_2W_8ohm_OR_2_93W_6ohm = 0b0110,
AGC2OP_2_4W_8ohm_OR_3_2W_6ohm = 0b0111,
AGC2OP_2_6W_8ohm_OR_3_47W_6ohm = 0b1000,
AGC2OP_2_8W_8ohm_OR_3_73W_6ohm = 0b1001,
AGC2OP_3W_8ohm_OR_4W_6ohm = 0b1010,
AGC2OP_OFF = 0b1011,
}AGC2_OUTPUT_POWER;
/*
* AGC2 total attack time
*/
typedef enum {
AGC2_ATT_TIME_0_16ms_dB = 0b000,
AGC2_ATT_TIME_0_32ms_dB = 0b001,
AGC2_ATT_TIME_0_64ms_dB = 0b010,
AGC2_ATT_TIME_2_56ms_dB = 0b011,
AGC2_ATT_TIME_10_24ms_dB = 0b100,
AGC2_ATT_TIME_40_96ms_dB = 0b101,
AGC2_ATT_TIME_82ms_dB = 0b110,
AGC2_ATT_TIME_164ms_dB = 0b111,
}eAGC2_ATT_TIME;
/*
* Fastest Level AGC attack time control
*/
typedef enum {
AGC1_ATT_TIME_0_04ms_dB = 0b00,
AGC1_ATT_TIME_0_08ms_dB = 0b01,
AGC1_ATT_TIME_0_16ms_dB = 0b10,
AGC1_ATT_TIME_0_32ms_dB = 0b11,
}eAGC1_ATT_TIME;
/*
* BOOST_MODE
*/
typedef enum {
ADPBOOST_MODE_PassThrough = 0b000,
ADPBOOST_MODE_ForceBOOST = 0b001,
ADPBOOST_MODE_MD1 = 0b010,
ADPBOOST_MODE_MD2 = 0b011
}eADPBOOST_MODE;
/*
* Duration time Po less than Po2
*/
typedef enum {
ADP_BST_TIME_20ms = 0b0101,
ADP_BST_TIME_30ms = 0b0110,
ADP_BST_TIME_40ms = 0b0111,
ADP_BST_TIME_65ms = 0b1000,
ADP_BST_TIME_80ms = 0b1001,
ADP_BST_TIME_100ms = 0b1010,
ADP_BST_TIME_120ms = 0b1011,
ADP_BST_TIME_140ms = 0b1100,
ADP_BST_TIME_160ms = 0b1101,
ADP_BST_TIME_320ms = 0b1110,
ADP_BST_TIME_480ms = 0b1111,
}eADP_BST_TIME;
/*
* ADP BOOST mode2 first step set BOOST_OUT<4:0>
*/
typedef enum {
ADP_LOW_STEP_1st_BST_OUT_6_5V = 0b00,
ADP_LOW_STEP_1st_BST_OUT_6_75V = 0b01,
ADP_LOW_STEP_1st_BST_OUT_7V = 0b10,
ADP_LOW_STEP_1st_BST_OUT_7_25V = 0b11,
}eADP_LOW_STEP;
/*
* Boost threshold Po2
*/
typedef enum {
SET_BOOST_VTH2_1_2W = 0b000,
SET_BOOST_VTH2_1_4W = 0b001,
SET_BOOST_VTH2_1_6W = 0b010,
SET_BOOST_VTH2_1_8W = 0b011,
SET_BOOST_VTH2_2_0W = 0b100,
SET_BOOST_VTH2_2_2W = 0b101,
}eSET_BOOST_VTH2;
/*
* Boost threshold Po1
*/
typedef enum {
SET_BOOST_VTH1_0_1W = 0b000,
SET_BOOST_VTH1_0_2W = 0b001,
SET_BOOST_VTH1_0_3W = 0b010,
SET_BOOST_VTH1_0_4W = 0b011,
}eSET_BOOST_VTH1;
#endif //AMPLIFIER_AW87579_ENUM_H