📄 codec.h
字号:
/*********************************************************************
filename: CODEC.h
designer: 戴展波
date: 2004/10/21
*********************************************************************/
#define OUTPUT 0
#define INPUT 1
#define HIGH_LEVEL 1
#define LOW_LEVEL 0
#define CS_STATE_0 0x34
#define CS_STATE_1 0x36
#define Left_Line_Input_Volume_Control 0x00 //左线形输入通道音频控制
#define Right_Line_Input_Volume_Control 0x01 //右线形输入通道音频控制
#define Left_Headphone_Volume_Control 0x02 //左通道耳机音频控制
#define Right_Headphone_Volume_Control 0x03 //右通道耳机音频控制
#define Analog_Aduio_Path_Control 0x04 //模拟音频控制
#define Digital_Audio_Path_Control 0x05 //数字音频控制
#define Power_Down_Control 0x06 //功耗控制
#define Digital_Audio_Inteface_Format 0x07 //数字音频接口格式
#define Sample_Rate_Control 0x08 //采样率控制
#define Digital_Interface_Activation 0x09 //数字接口激活
#define Reset_Register 0x0A //复位寄存器
/* Power_Down_Control register control data */
#define PDC_DEFAULT 0x0 //各部分功能使能
/* Digital_Audio_Inteface_Format register control data */
#define DAIF_MS 0x40 //AIC23主模式
#define DAIF_LRSWAP 0x00 //DAC左右通道交换关闭
#define DAIF_LRP 0x10 //
#define DAIF_IWL 0x00 //输入字节长度16BIT
#define DAIF_FOR 0x03 //设置IIS数据格式
/* Sample_Rate_Control register control data */
#define SRC_CLKIN 0x00 //时钟输入MCLK
#define SRC_CLKOUT 0x00 //时钟输出MCLK
#define SRC_SR 0x00 //ADC采样率设置
#define SRC_BOSR 0x00 //256fs
#define SRC_USB 0x00 //时钟模式选择normal
/* Reset_Register register control data */
#define RR_STATUS 0x00 //复位
/* Analog_Aduio_Path_Control register control data */
#define AAPC_STA 0x00 //关闭
#define AAPC_STE 0x00 //关闭
#define AAPC_DAC 0x10 //DAC选择
#define AAPC_BYP 0x00 //旁路关闭
#define AAPC_INSEL 0x00 //ADC输入选择线形
#define AAPC_MICM 0x00 //MICROPHONE弱音
#define AAPC_MICB 0x01 //MICROPHONE推进
/* Digital_Audio_Path_Control register control data */
#define DAPC_DACM 0x00 //DAC软弱音关闭
#define DAPC_DEEMP 0x00 //不强调关闭
#define DAPC_ADCHP 0x01 //ADC高通滤波
/* Digital_Interface_Activation register control data */
#define DIA_ACT 0x01 //数字接口激活
/* Left_Line_Input_Volume_Control register control data */
#define LLIVC_LRS 0x100 //左/右通道线形同步升级关闭
#define LLIVC_LIM 0x00 //左通道线形弱音正常
#define LLIVC_LIV 0x17 //左通道线形输入音频控制
/* Right_Line_Input_Volume_Control register control data */
#define RLIVC_RLS 0x100 //左/右通道线形同步升级关闭
#define RLIVC_RIM 0x00 //右通道线形弱音正常
#define RLIVC_RIV 0x17 //右通道线形输入音频控制
/* Left_Headphone_Volume_Control register control data */
#define LHVC_LRS 0x100 //左/右通道耳机同步升级关闭
#define LHVC_LZC 0x80 //左通道零通过检测关闭
#define LHVC_LHV 0x7f //左通道耳机音频控制
/* Right_Headphone_Volume_Control register control data */
#define RHVC_RLS 0x100 //左/右通道耳机同步升级关闭
#define RHVC_RZC 0x80 //右通道零通过检测关闭
#define RHVC_RHV 0x7f //右通道耳机音频控制
extern far void vectors();
void init_aic23(void);
void delay_time(Uint32 value);
void IIC_SCL_DIR(Uint32 dir);
void IIC_SCL_OUT(Uint32 data);
void IIC_SDA_DIR(Uint32 dir);
void IIC_SDA_OUT(Uint32 data);
void Write_Command(unsigned int address,unsigned int data);
void Write_IIC(unsigned int Rtc_Var);
void Write_Start_bit(void);
void Write_Stop_bit(void);
unsigned int Read_IIC_ACK(void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -