⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sta308a.h

📁 ST308的数字功放的原理图和I2C控制软件
💻 H
字号:
/*********************************************************
Sta308a
*********************************************************/

#ifdef	Sta308a_c


//  define  initial value
#define		Sta308a_ConfA_Init				0x83  //2005-9-26 14:48 // 0x83
#define		Sta308a_ConfB_Init				0x00                    // 0x00
#define		Sta308a_ConfC_Init				0x00                    // 0x00
#define		Sta308a_ConfD_Init				0xc2                    // 0xfe
#define		Sta308a_ConfE_Init				0x03                    // 0x00
#define		Sta308a_ConfF_Init				0x00//|0x40  //0x05              // 0x00
#define		Sta308a_ConfG_Init				0x02                    // 0x00
#define		Sta308a_ConfH_Init				0x7e//0xfe              // 0x7e
#define		Sta308a_ConfI_Init				0x00//0x80              // 0x80
#define		Sta308a_Mmute_Init				0x00                    // 0x00
#define		Sta308a_Mvol_Init				0x00                    // 0x00
#define		Sta308a_C1Vol_Init				0x60-0x05+0x02        // 0x60
#define		Sta308a_C2Vol_Init				0x60-0x05+0x02        // 0x60
#define		Sta308a_C3Vol_Init				0x60        // 0x60
#define		Sta308a_C4Vol_Init				0x60        // 0x60
#define		Sta308a_C5Vol_Init				0x60        // 0x60
#define		Sta308a_C6Vol_Init				0x60-0x09        // 0x60
#define		Sta308a_C7Vol_Init				0x60        // 0x60
#define		Sta308a_C8Vol_Init				0x60        // 0x60
#define		Sta308a_C1VTNB_Init			  0x10                    // 0x0c
#define		Sta308a_C2VTNB_Init			  0x10                    // 0x0c
#define		Sta308a_C3VTNB_Init			  0x10                    // 0x0a
#define		Sta308a_C4VTNB_Init			  0x10                    // 0x10
#define		Sta308a_C5VTNB_Init			  0x10                    // 0x10
#define		Sta308a_C6VTNB_Init			  0x10                    // 0x10
#define		Sta308a_C7VTNB_Init			  0x10                    // 0x10
#define		Sta308a_C8VTNB_Init			  0x10                    // 0x10
#define		Sta308a_C12im_Init				0x10                    // 0x22
#define		Sta308a_C34im_Init				0x32                    // 0x12
#define		Sta308a_C56im_Init				0x54                    // 0x54
#define		Sta308a_C78im_Init				0x76                    // 0x76
#define		Sta308a_Auto1_Init				0x00                    // 0x00
#define		Sta308a_Auto2_Init				0x83                    // 0x80
#define		Sta308a_Auto3_Init				0x03//+0x10//2          // 0x00
#define		Sta308a_PreEQ_Init				0xa0                    // 0x00
#define		Sta308a_Ageq_Init				  0x0f                    // 0x0f
#define		Sta308a_Bgeq_Init				  0x0f                    // 0x0f
#define		Sta308a_Cgeq_Init				  0x0f                    // 0x0f
#define		Sta308a_Dgeq_Init				  0x0f                    // 0x0f
#define		Sta308a_Fgeq_Init				  0x0f                    // 0x0f
#define		Sta308a_BQlp_Init				  0x00                    // 0x00
#define		Sta308a_MXlp_Init				  0x00                    // 0x00
#define		Sta308a_EQbp_Init				  0x00                    // 0x00
#define		Sta308a_ToneBP_Init			  0x00                    // 0x00
#define		Sta308a_Tone_Init				  0x77                    // 0x77
#define		Sta308a_C1234ls_Init			0x00                    // 0x00
#define		Sta308a_C5678ls_Init			0x00//6a                // 0x00
#define		Sta308a_L1ar_Init				  0x6a//9                 // 0x6a
#define		Sta308a_L1atrt_Init			  0x69//a                 // 0x69
#define		Sta308a_L2ar_Init				  0x6a//9                 // 0x6a
#define		Sta308a_L2atrt_Init			  0x69                    // 0x69
#define		Sta308a_C12ot_Init				0x20                    // 0x40
#define		Sta308a_C34ot_Init				0x64                    // 0x62
#define		Sta308a_C56ot_Init				0x51                    // 0x51
#define		Sta308a_C78ot_Init				0x73                    // 0x73
#define		Sta308a_C12om_Init				0x10                    // 0x10
#define		Sta308a_C34om_Init				0x32                    // 0x32
#define		Sta308a_C56om_Init				0x54                    // 0x54
#define		Sta308a_C78om_Init				0x76                    // 0x76
#define		Sta308a_Cfaddr1_Init			0x00                    // 0x00
#define		Sta308a_Cfaddr2_Init			0x00                    // 0x00
#define		Sta308a_B1cf1_Init				0x00                    // 0x00
#define		Sta308a_B1cf2_Init				0x00                    // 0x00
#define		Sta308a_B1cf3_Init				0x00                    // 0x00
#define		Sta308a_B2cf1_Init				0x00                    // 0x00
#define		Sta308a_B2cf2_Init				0x00                    // 0x00
#define		Sta308a_B2cf3_Init				0x00                    // 0x00
#define		Sta308a_A1cf1_Init				0x00                    // 0x00
#define		Sta308a_A1cf2_Init				0x00                    // 0x00
#define		Sta308a_A1cf3_Init				0x00                    // 0x00
#define		Sta308a_A2cf1_Init				0x00                    // 0x00
#define		Sta308a_A2cf2_Init				0x00                    // 0x00
#define		Sta308a_A2cf3_Init				0x00                    // 0x00
#define		Sta308a_B0cf1_Init				0x00                    // 0x00
#define		Sta308a_B0cf2_Init				0x00                    // 0x00
#define		Sta308a_B0cf3_Init				0x00                    // 0x00
#define		Sta308a_Cfud_Init				  0x00                    // 0x00
#define		Sta308a_MPCC1_Init				0x2d                    // 0x2d
#define		Sta308a_MPCC2_Init				0xc0                    // 0xc0
#define		Sta308a_RES0_Init 				0x00                    // 0x00
#define		Sta308a_RES1_Init				  0x00                    // 0x00
#define		Sta308a_PSC1_Init				  0x00                    // 0x00
#define		Sta308a_PSC2_Init				  0x0f                    // 0x0f
#define		Sta308a_PSC3_Init				  0xff //2005-9-26 15:24  // 0xff


//  Sta308 Address

#define		Sta308a_ConfA				0x00
#define		Sta308a_ConfB				0x01
#define		Sta308a_ConfC				0x02
#define		Sta308a_ConfD				0x03
#define		Sta308a_ConfE				0x04
#define		Sta308a_ConfF				0x05
#define		Sta308a_ConfG				0x06
#define		Sta308a_ConfH				0x07
#define		Sta308a_ConfI				0x08

#define		Sta308a_Mmute				0x09
#define		Sta308a_Mvol				0x0a

#define		Sta308a_C1Vol				0x0b
#define		Sta308a_C2Vol				0x0c
#define		Sta308a_C3Vol				0x0d
#define		Sta308a_C4Vol				0x0e
#define		Sta308a_C5Vol				0x0f
#define		Sta308a_C6Vol				0x10
#define		Sta308a_C7Vol				0x11
#define		Sta308a_C8Vol				0x12

#define		Sta308a_C1VTNB			0x13
#define		Sta308a_C2VTNB			0x14
#define		Sta308a_C3VTNB			0x15
#define		Sta308a_C4VTNB			0x16
#define		Sta308a_C5VTNB			0x17
#define		Sta308a_C6VTNB			0x18
#define		Sta308a_C7VTNB			0x19
#define		Sta308a_C8VTNB			0x1a

#define		Sta308a_C12im				0x1b
#define		Sta308a_C34im				0x1c
#define		Sta308a_C56im				0x1d
#define		Sta308a_C78im				0x1e

#define		Sta308a_Auto1				0x1f
#define		Sta308a_Auto2				0x20
#define		Sta308a_Auto3				0x21
#define		Sta308a_PreEQ				0x22
#define		Sta308a_Ageq				0x23
#define		Sta308a_Bgeq				0x24
#define		Sta308a_Cgeq				0x25
#define		Sta308a_Dgeq				0x26
#define		Sta308a_Fgeq				0x27
#define		Sta308a_BQlp				0x28
#define		Sta308a_MXlp				0x29
#define		Sta308a_EQbp				0x2a
#define		Sta308a_ToneBP			0x2b
#define		Sta308a_Tone				0x2c
#define		Sta308a_C1234ls			0x2d
#define		Sta308a_C5678ls			0x2e
#define		Sta308a_L1ar				0x2f
#define		Sta308a_L1atrt			0x30
#define		Sta308a_L2ar				0x31
#define		Sta308a_L2atrt			0x32
#define		Sta308a_C12ot				0x33
#define		Sta308a_C34ot				0x34
#define		Sta308a_C56ot				0x35
#define		Sta308a_C78ot				0x36
#define		Sta308a_C12om				0x37
#define		Sta308a_C34om				0x38
#define		Sta308a_C56om				0x39
#define		Sta308a_C78om				0x3a
#define		Sta308a_Cfaddr1			0x3b
#define		Sta308a_Cfaddr2			0x3c
#define		Sta308a_B1cf1				0x3d
#define		Sta308a_B1cf2				0x3e
#define		Sta308a_B1cf3				0x3f
#define		Sta308a_B2cf1				0x40
#define		Sta308a_B2cf2				0x41
#define		Sta308a_B2cf3				0x42
#define		Sta308a_A1cf1				0x43
#define		Sta308a_A1cf2				0x44
#define		Sta308a_A1cf3				0x45
#define		Sta308a_A2cf1				0x46
#define		Sta308a_A2cf2				0x47
#define		Sta308a_A2cf3				0x48
#define		Sta308a_B0cf1				0x49
#define		Sta308a_B0cf2				0x4a
#define		Sta308a_B0cf3				0x4b
#define		Sta308a_Cfud				0x4c
#define		Sta308a_MPCC1				0x4d
#define		Sta308a_MPCC2				0x4e
#define		Sta308a_RES0 				0x4f

#define		Sta308a_RES1				0x50
#define		Sta308a_PSC1				0x51
#define		Sta308a_PSC2				0x52
#define		Sta308a_PSC3				0x53

//  Volume Value
#define		VOL00								0x32+0x20					
#define		VOL01								0x31+0x1b

#define		VOL02								0x30+0x10
#define		VOL03								0x2f+0x08
#define		VOL04								0x2e+0x06
#define		VOL05								0x2d+0x04
#define		VOL06								0x2c+0x02


#define		VOL07								0x2b+0x01
#define		VOL08								0x2a+0x01
#define		VOL09								0x29+0x01
#define		VOL10								0x28+0x01
#define		VOL11								0x27+0x01
#define		VOL12								0x26+0x01
#define		VOL13								0x25+0x01
#define		VOL14								0x24+0x01
                                   
#define		VOL15								0x23+0x01
#define		VOL16								0x22+0x01
#define		VOL17								0x21+0x01
#define		VOL18								0x20+0x01
#define		VOL19								0x1f+0x01
#define		VOL20								0x1e+0x01
#define		VOL21								0x1d+0x01
#define		VOL22								0x1c+0x01
#define		VOL23								0x1b+0x01
#define		VOL24								0x1a+0x01

#define		VOL25								0x19+0x01
#define		VOL26								0x18+0x01
#define		VOL27								0x17+0x01
#define		VOL28								0x16+0x01
#define		VOL29								0x15+0x01
#define		VOL30								0x14+0x01
#define		VOL31								0x13+0x01
#define		VOL32								0x12+0x01
#define		VOL33								0x11+0x01
#define		VOL34								0x10+0x01

#define		VOL35								0x0f+0x01
#define		VOL36								0x0e+0x01
#define		VOL37								0x0d+0x01
#define		VOL38								0x0c+0x01
#define		VOL39								0x0b+0x01
#define		VOL40								0x0a+0x01
#define		VOL41								0x09+0x01
#define		VOL42								0x08+0x01
#define		VOL43								0x07+0x01
#define		VOL44								0x06+0x01

#define		VOL45								0x05//+0x01
#define		VOL46								0x04//+0x01
#define		VOL47								0x03//+0x01
#define		VOL48								0x02//+0x01
#define		VOL49								0x01//+0x01
#define		VOL50								0x00

//  EQ Define
#define   EQVal								17
#define   EQNum								8	

#define   EQSingleVal								5
#define   EQSingleNum								3	

void	PowerOffSt500(void);
void	ProcessEQ(void);
void	ReadEqValue(char , char , char );
/*************************************/
#else

extern	void	InitSta308a(void);
extern	void	PowerSt500(void);
extern	void	PowerOffSt500(void);
extern	void	SendSta308aVol(unsigned char);
extern  void	SendSta308aMuteOff(void);
extern  void	SendSta308aMuteOn(void);
extern	void	SendSta308aBass(unsigned char);
extern  void	Select308AM(unsigned char);
extern  void	Slect308AMFreq(unsigned char);
extern  void	ProcessEQ(void);
#endif



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -