?? audio.h
字號(hào):
/*++
Copyright (c) 2001 Sunplus Technology Co., Ltd.
Module Name:
audio.h
Abstract:
Header file related to audio functions
Environment:
Keil C51 Compiler
Revision History:
08/28/2001 Chi-Yeh Tsai created
--*/
//------------------------------------------------------------------------------
//Constant
//------------------------------------------------------------------------------
//AC'97 CODEC register number
#define K_AC_Index_Reset 0x00
#define K_AC_Index_MasterVolume 0x02
#define K_AC_Index_MasterVolumeMono 0x06
#define K_AC_Index_PcBeepVolume 0x0A
#define K_AC_Index_PhoneVolume 0x0C
#define K_AC_Index_MicVolume 0x0E
#define K_AC_Index_LineInVolume 0x10
#define K_AC_Index_CdVolume 0x12
#define K_AC_Index_VideoVolume 0x14
#define K_AC_Index_AuxVolume 0x16
#define K_AC_Index_PcmOutVol 0x18
#define K_AC_Index_RecordSelect 0x1A
#define K_AC_Index_RecordGain 0x1C
#define K_AC_Index_GeneralPurpose 0x20
#define K_AC_Index_3dControl 0x22
#define K_AC_Index_PowerDownCtrlSts 0x26
#define K_AC_Index_SerialConfig 0x74
#define K_AC_Index_MiscCtrlBits 0x76
#define K_AC_Index_SampleRate0 0x78
#define K_AC_Index_SampleRate1 0x7A
#define K_AC_Index_VendorId1 0x7C
#define K_AC_Index_VendorId2 0x7E
//AC'97 CODEC register content //current //default
#define K_AC_Reset 0x0400 //0x0400
#define K_AC_MasterVolume 0x8000 //0x8000
#define K_AC_MasterVolumeMono 0x8000 //0x8000
#define K_AC_PcBeepVolume 0x8000 //0x8000
#define K_AC_PhoneVolume 0x8008 //0x8008
#define K_AC_MicVolume 0x0040 //0x8008
#define K_AC_LineInVolume 0x8808 //0x8808
#define K_AC_CdVolume 0x8808 //0x8808
#define K_AC_VideoVolume 0x8808 //0x8808
#define K_AC_AuxVolume 0x8808 //0x8808
#define K_AC_PcmOutVol 0x8808 //0x8808
#define K_AC_RecordSelect 0x0606 //0x0000
#define K_AC_RecordGain 0x0f0f //0x8000
#define K_AC_GeneralPurpose 0x0000 //0x0000
#define K_AC_3dControl 0x0000 //0x0000
#define K_AC_PowerDownCtrlSts 0x0000 //0x0000
#define K_AC_SerialConfig 0x7000 //0x7000
#define K_AC_MiscCtrlBits 0x0000 //0x0000
#define K_AC_SampleRate0 0x1F40 //0xBB80
#define K_AC_SampleRate1 0xBB80 //0xBB80
#define K_AC_VendorId1 0x4144 //0x4144
#define K_AC_VendorId2 0x5303 //0x5303
//Sub-sampling specific
#define K_AUDIO_MaxSampleRate 0x1F40
#define K_AUDIO_SubSampleFactor (K_AUDIO_MaxSampleRate / K_AC_SampleRate0)
//AC'97 CODEC register read/write retry count
#define K_AC_MAXRETRYCOUNT 1000000
//------------------------------------------------------------------------------
//External Link
//------------------------------------------------------------------------------
extern xdata ULONG G_AUDIO_RateScale; //@WYEO, 1008
extern xdata ULONG G_AUDIO_Rate;
extern xdata UCHAR G_AUDIO_Bits;
extern xdata UCHAR G_AUDIO_nChannel;
extern xdata UCHAR G_AUDIO_nSampleSize;
extern code USHORT AudAS_SampleRate[];
extern idata UCHAR G_File_AudioByteLo;
extern idata UCHAR G_File_AudioByteHi;
extern xdata ULONG G_File_SDRAM_AudioBufSize;
extern data UCHAR G_File_SubSampleFactor;
extern idata UCHAR G_File_AudioSampleCount;
//------------------------------------------------------------------------------
//Function Prototype
//------------------------------------------------------------------------------
void AUDIO_Initialize(void);
USHORT AUDIO_AcRegisterRead(UCHAR index);
void AUDIO_AcRegisterWrite(UCHAR index, USHORT value);
void File_AudioSetMode(void); // @WYEO, 1008
void File_AudioGetSample(void); // @WYEO, 1008
BYTE File_PlayWaveStream(ULONG ramAddr, ULONG audioSize, ULONG *pAudsValue); // @WYEO, 103101
ULONG File_RecordAudioStream(ULONG ramAddr, ULONG ramSize, ULONG *pAudsValue); // @WYEO, 103101
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -