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

📄 tvmsp3450g.h.svn-base

📁 最新火热的CX32 源代码
💻 SVN-BASE
字号:
#ifndef __TVAUDIOMSP3450G_H
#define __TVAUDIOMSP3450G_H
#ifdef __cplusplus
extern "C" {
#endif

/* Msp34x0G I2C operate address defination */ 	 //	ADR_SEL		LOW		Hight		Open
#define SLAVE_ADDRESS_MSP3450G	0x80     	 //	Write			0x80		0x84		0x88
									           	//   Read			0x81	0x85	0x89
#define SUB_ADDRESS_CTL			0x00
#define SUB_ADDRESS_DEM_WR		0x10
#define SUB_ADDRESS_DEM_RD		0x11
#define SUB_ADDRESS_DSP_WR		0x12
#define SUB_ADDRESS_DSP_RD		0x13

//Define RegAddr for SubAddr = 0x10
#define	STANDARD_SELECT		    0x20		//Initial Programming of the Demodulator
#define	MODUS_REG				0x30		//Demodulator,Automatic and I2S options
#define	I2S_CONFIG				0x40		//Configuration of I2S options

//Define RegAddr for SubAddr = 0x11
#define	STANDARD_RESULT		    0x007e
#define	STATUS_REG				0x0200

//Define RegAddr for SubAddr = 0x12
#define VOL_MAIN			        	0x00
#define BAL_MAIN         	  		    0x01
#define BASS_MAIN             	    	0x02
#define TREB_MAIN            	    	0x03
#define LOUD_MAIN             	    	0x04
#define SPAT_MAIN               		0x05
#define VOL_AUX                 		0x06
#define VOL_SCART1              		0x07
#define SRC_MAIN                		0x08
#define SRC_AUX                 		0x09
#define SRC_SCART1              		0x0A
#define SRC_I2S                 		0x0B
#define SRC_QPEAK               		0x0C
#define PRE_SCART               		0x0D
#define PRE_FM                  		0x0E
#define FM_MATRIX               		0x0E
#define PRE_NICAM               		0x10
#define PRE_I2S2                		0x12
#define ACB_REG                 		0x13
#define BEEPER                  		0x14
#define PRE_I2S1                		0x16
#define TONE_MODE               		0x20
#define EQUAL_BAND1             		0x21
#define EQUAL_BAND2             		0x22
#define EQUAL_BAND3             		0x23
#define EQUAL_BAND4             		0x24
#define EQUAL_BAND5             		0x25
#define AVC                     		0x29
#define SUBW_LEVEL              		0x2C
#define SUBW_FREQ               		0x2D
#define SUBW_HP                 		0x2D
#define BAL_AUX                 		0x30
#define BASS_AUX                		0x31
#define TREB_AUX                		0x32
#define LOUD_AUX                		0x33
#define VOL_SCART2              		0x40
#define SRC_SCART2              		0x41
#define MDB_STR                 		0x68
#define MDB_LIM                 		0x69
#define MDB_HMC                 		0x6A
#define MDB_LP                 	 		0x6B
#define MDB_HP                  		0x6c

//Define RegAddr for SubAddr = 0x13
#define	QPEAK_LEFT 		     	        0x19
#define	QPEAK_RIGHT     			    0x1A
#define	MSP_VER  		        		0x1E
#define	MSP_CODE    			        0x1F

// for MspOutputMode
#define MSP_OUT_MONO		0x00		//	MSP output mode mono
#define MSP_OUT_STEREO		0x01		//	MSP output mode stereo
#define MSP_OUT_DUAL1		0x02		//	MSP output mode dual1
#define MSP_OUT_DUAL2		0x03		//	MSP output mode dual2
#define MSP_OUT_NICAM		0x04		//	MSP output mode,NICAM/FM
#define MSP_OUT_FORCE		0x08		//	MSP output mode,Force or user selected mode

// for MspUserSelect
#define MSP_USER_FM_AM		0x00		//	FM/AM.
#define MSP_USER_STEREO_A_B	0x01		//	Stereo or A/B.
#define MSP_USER_STEREO_A  	0x02		//	Stereo or A.
#define MSP_USER_STEREO_B	0x03		//	Stereo or B.

// for MspTransMode
#define MSP_TRANS_ONLY_FM_MONO			0x00	//FM MONO
#define MSP_TRANS_ONLY_FM_STEREO		0x01	//FM STEREO
#define MSP_TRANS_ONLY_FM_DUAL			0x02	//FM DUAL
#define MSP_TRANS_FM_NICAM_MONO			0x03	//NICAM MONO
#define MSP_TRANS_FM_NICAM_STEREO		0x04	//NICAM STEREO
#define MSP_TRANS_FM_NICAM_DUAL			0x05	//NICAM DUAL
#define MSP_TRANS_MTS_MONO_SAP			0x06	//MTS MONO&SAP
#define MSP_TRANS_MTS_STEREO_SAP		0x07	//MTS STEREO&SAP

// for MspReadStatus  :  STATUS_REG[1:8]   
#define M_MSP_STATUS_1ST_CARRIER_NG		0x01	//	xxxx,xxx1
#define M_MSP_STATUS_2ND_CARRIER_NG		0x02	//	xxxx,xx1x
#define M_MSP_STATUS_D_CTR_0			0x04	//	xxxx,x1xx
#define M_MSP_STATUS_D_CTR_1			0x08	//	xxxx,1xxx
#define M_MSP_STATUS_REG_NICAM			0x10	//	xxx1,xxxx
#define M_MSP_STATUS_STEREO				0x20	//	xx1x,xxxx
#define M_MSP_STATUS_INDEPENDENT_MONO	0x40	//	x1xx,xxxx
#define M_MSP_STATUS_BILINGUAL			0x80	//	1xxx,xxxx

// Emulate sync bit from VDP
#define M_MSP_SAMPLE_TIME               5      // 20ms = 100ms Check for the new standard every

typedef struct tagGlobalMspFlags
{
	Bool F_MspAvc		        : 1;		// MSP Auto Volume Correction	:store
	Bool F_MspAm         		: 1;		// MSP SECAM_L sound system						:store
	Bool F_MspSap        		: 1;		// MSP For MTS
	Bool F_MspEffect     		: 1;		// MSP effect									:store
	Bool F_MspASS        		: 1;		// MSP Automatic Sound Select
	Bool F_MspUserChange 	    : 1;		// User selection mode change.
	Bool F_MspBusChange  	    : 1;		//Bus Change
	Bool F_MspNicamError 	    : 1;		// Bad reception condition of digital sound.
	Bool F_MspStatusChange 	    : 1;		// Transmission status change.
	Bool F_MspSoundChannelChange	:1;	//user select sound channel change.	
}GlobalMspFlags;

typedef struct tagMspData
{
	Byte ucMspReadStatus;			// Transmission status will be stored here.
	Byte ucMspTransMode;			// Transmission mode.
	Byte ucMspUserSelect;			// User selection will be stored here.
	Byte ucMspBusSelect;
	Byte ucMspOutputMode;			// MSP34x5 output mode.
	Byte ucMspTimer;				// Check MSP34x5 every 100ms.
	Byte ucMspFresh;				// refresh reg counter
	Byte ucMspAsdState;				// MSP ASD(Auto Standard Detection) state.
	Byte ucMspHardwareVersion;		// MSP Hardware Version Code
	Byte ucMspMajorReversion;		// MSP Major Reversion Code
	Byte ucMspProductCode;			// MSP Product Code Code
	Byte ucMspRomVersion;			// MSP ROM Version Code
	Byte ucMspDecDelay;
	Byte ucSoundSystem;				// MSP sound standard detected automaticly
}GlobalMspData;

Bool tvMSP3450GInit(RPByte pData);
Bool tvMSP3450GSetAttr(Byte ucAttr, Word wVal);
Byte tvMSP3450GGetAttr(Byte ucAttr);

#ifdef __cplusplus
};
#endif
#endif



⌨️ 快捷键说明

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