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

📄 ac97.h

📁 基于华邦W90P710 arm开发板的AC97模块测试程序
💻 H
字号:
/**************************************************************************************************
 *                                                                          
 * Copyright (c) 2004 - 2007 Winbond Electronics Corp. All rights reserved.      
 *                                                                         
 * FILENAME
 *     AC97.h
 *
 * VERSION
 *     1.0
 *
 * DESCRIPTION
 *     This file contains the register map of AC97 audio codec
 *
 * HISTORY
 *     02/09/2004		 Ver 1.0 Created by PC30 YCHuang
 *
 * REMARK
 *     None
 *     
 *************************************************************************************************/
#ifndef _AC97_H_
#define _AC97_H_

#define AC97_RESET				0x00
#define AC97_MASTER_VOLUME		0x02
#define AC97_AUX_OUT_VOLUME		0x04
#define AC97_MONO_VOLUME		0x06
#define AC97_MASTER_TONE		0x08
#define AC97_PC_BEEP_VOLUME		0x0A
#define AC97_PHONE_VOLUME		0x0C
#define AC97_MIC_VOLUME			0x0E
#define AC97_LINE_IN_VOLUME		0x10
#define AC97_CD_VOLUME			0x12
#define AC97_VIDEO_VOLUME		0x14
#define AC97_AUX_IN_VOLUME		0x16
#define AC97_PCM_OUT_VOLUME		0x18
#define AC97_RECORD_SELECT		0x1A
#define AC97_RECORD_GAIN		0x1C
#define AC97_RECORD_GAIN_MIC	0x1E
#define AC97_GENERAL_PURPOSE	0x20
#define AC97_3D_CONTROL			0x22
#define AC97_AUDIO_INT_PAGING	0x24
#define AC97_POWERDOWN_CTRL		0x26
#define AC97_EXT_AUDIO_ID		0x28
#define AC97_EXT_AUDIO_CTRL		0x2A
#define AC97_FRONT_DAC_RATE		0x2C
#define AC97_LR_ADC_RATE		0x32
#define AC97_MIC_ADC_RATE		0x34

/* bit definition of REG_ACTL_CON register */
#define AUDCLK_EN			0x8000
#define PFIFO_EN			0x4000
#define RFIFO_EN			0x2000
#define R_DMA_IRQ			0x1000
#define T_DMA_IRQ			0x0800
#define IIS_AC_PIN_SEL		0x0100
#define FIFO_TH				0x0080
#define DMA_EN				0x0040
#define DAC_EN				0x0020
#define ADC_EN				0x0010
#define M80_EN				0x0008
#define ACLINK_EN			0x0004
#define IIS_EN				0x0002
#define AUDIO_EN			0x0001

/* bit definition of REG_ACTL_RESET register */
#define W5691_PLAY			0x20000
#define ACTL_RESET_BIT		0x10000			
#define RECORD_RIGHT_CHNNEL 0x8000
#define RECORD_LEFT_CHNNEL 	0x4000
#define PLAY_RIGHT_CHNNEL 	0x2000
#define PLAY_LEFT_CHNNEL 	0x1000
#define DAC_PLAY		 	0x0800
#define ADC_RECORD			0x0400
#define M80_PLAY			0x0200
#define AC_RECORD			0x0100
#define AC_PLAY				0x0080
#define IIS_RECORD			0x0040
#define IIS_PLAY			0x0020
#define DAC_RESET			0x0010
#define ADC_RESET			0x0008
#define M80_RESET			0x0004
#define AC_RESET			0x0002
#define IIS_RESET			0x0001

/* bit definition of REG_ACTL_ACCON register */
#define AC_BCLK_PU_EN		0x20
#define AC_R_FINISH			0x10
#define AC_W_FINISH			0x08
#define AC_W_RES			0x04
#define AC_C_RES			0x02

/* bit definition of REG_ACTL_RSR register */
#define R_FIFO_EMPTY		0x04
#define R_DMA_END_IRQ		0x02
#define R_DMA_MIDDLE_IRQ	0x01

/* bit definition of REG_ACTL_PSR register */
#define P_FIFO_EMPTY		0x04
#define P_DMA_END_IRQ		0x02
#define P_DMA_MIDDLE_IRQ	0x01

/* bit definition of REG_ACTL_M80CON register */
#define X86_PCM_TRANS		0x10000
#define BITS16				0x400
#define MA3_W5691			0x200
#define W_IF13_ACT			0x100
#define BUSY				0x80
#define R_IF11_ACT			0x40
#define R_IF10_ACT			0x20
#define W_IF12_ACT			0x10
#define W_IF11_ACT			0x08
#define W_IF10_ACT			0x04
#define SOFT_CON			0x02
#define W_GFIFO				0x20000

#define CLK_DIV				0xF800

#define SOFT_CON_A0			0x0
#define SOFT_CON_A1			0x100
#define SOFT_CON_R			0x200
#define SOFT_CON_W			0x400
#define SOFT_CON_CS			0x800
#define SOFT_CON_REQ		0x1000
#define SOFT_CON_REL		0x2000

/* bit definition of REG_ACTL_ADCON register */
#define ADC_ZCD_EN			0x8
#define ADC_MUTE			0x2

/* bit definition of REG_ACTL_DACON register */
#define DAC1_OEB			0x2000
#define DAC0_OEB			0x1000
#define DAC_ZCD_EN			0x8
#define DAC_MUTE			0x2

#define AD_DA_48000			(0x0 << 4)
#define AD_DA_44100			(0x1 << 4)
#define AD_DA_32000			(0x2 << 4)
#define AD_DA_24000			(0x3 << 4)
#define AD_DA_22050			(0x4 << 4)
#define AD_DA_16000			(0x5 << 4)
#define AD_DA_12000			(0x6 << 4)
#define AD_DA_11025			(0x7 << 4)
#define AD_DA_8000			(0x8 << 4)
#endif	/* _AC97_H_ */

⌨️ 快捷键说明

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