www.pudn.com > iMagic_2006_0428_v098r23.rar > i2sdrv.h
/* **************************************************************** * Magic Pixel Inc. * * Copyright 2004, Magic Pixel Inc., HsinChu, Taiwan * All rights reserved. * * * * Filename: i2sdrv.H * * Programmer: Richard * MPX E120 division * * Created: 11/01/2004 * * Description: Common header file * * * Change History (most recent first): * <1> 10/27/2004 Richard first file **************************************************************** */ #ifndef i2sdrv_h #define i2sdrv_h /* ***************************************************************************** * INCLUDE FILES ***************************************************************************** */ /* ***************************************************************************** * DEFINITION OF DATA TYPES ***************************************************************************** */ /* Quota of I2S buffer */ #define I2SQUOTA_02K 0x0000 #define I2SQUOTA_04K 0x0001 #define I2SQUOTA_08K 0x0003 #define I2SQUOTA_16K 0x0007 #define I2SQUOTA_32K 0x000f #define I2SQUOTA_64K 0x001f #define I2SQUOTA_128K 0x003f #define I2SQUOTA_256K 0x007f #define I2SQUOTA_512K 0x00ff /* Sampling rate define */ #define FS_08KHZ 0 #define FS_11KHZ 1 #define FS_12KHZ 2 #define FS_16KHZ 3 #define FS_22KHZ 4 #define FS_24KHZ 5 #define FS_32KHZ 6 #define FS_44KHZ 7 #define FS_48KHZ 8 #define FS_64KHZ 9 #define FS_88KHZ 10 #define FS_96KHZ 11 #define DAC_INIT 0 #define ADC_INIT 1 extern WORD MP3FS[12]; extern WORD AACFS[12]; /* ******************************************************************************** * DECLARATION OF PROTOTYPES ******************************************************************************** */ void I2SEnable(BYTE OnOff); void I2SReset(SWORD *BuffAddr, DWORD BuffLen, WORD Profile); void I2SBuffInput(SWORD *pcmbuf1ptr, SWORD *pcmbuf2ptr, SWORD *i2soutptr, DWORD offset, DWORD length, DWORD i2slength,WORD profile); void I2SBuffOutput(SWORD *pcmbuf1ptr, SWORD *pcmbuf2ptr, SWORD *i2soutptr, DWORD offset, DWORD length, DWORD i2slength,WORD profile); void I2SInit(DWORD BuffAddr, WORD BuffLen, WORD Profile, WORD fs); void I2SCodecInit(WORD profile, WORD fs); DWORD SamplingRateIndex(DWORD rate); void FillCodecMCLKTab(WORD *mclkParam); void SetupAudioPLLFrequence(DWORD FS); void SetupI2SConfiguration(WORD action); void ConfigureI2S(void); // for REV B to simulate the baseband to powerup the codec void CodecPowerUp(WORD fs); // Implementation in AppAudio.c void recodingDataDownmix(BOOL dwonmixing); #endif // i2sdrv_h