資料介紹

Table of Contents
ADAU1701 Sound Audio System Linux Driver
Supported Devices
Reference Circuits
Evaluation Boards
Description
ADAU1701 is a SigmaDSP with DACs and ADCs,and support both analog and digital inputs/outputs(I2S). This driver is intended to drive ADAU1701 through I2S, so we adapt it into ASoC framework and treat it as an audio codec, also it needs to include firmware loading function to download firmware blob at the initializing time.
Source Code
Status
Files
| Function | File |
|---|---|
| driver | sound/soc/codecs/adau1701.c |
| include | sound/soc/codecs/adau1701.h |
Example platform device initialization
Below is an example which is used on Blackfin board file.
static struct i2c_board_info __initdata bfin_i2c_board_info[] = { ? [--snip--] #if defined(CONFIG_SND_SOC_ADAU1701) || defined(CONFIG_SND_SOC_ADAU1701_MODULE) { I2C_BOARD_INFO("adau1701", 0x34), }, #endif [--snip--] }
static int __init stamp_init(void) { [--snip--] i2c_register_board_info(0, bfin_i2c_board_info, ARRAY_SIZE(bfin_i2c_board_info)); [--snip--] ? return 0; } arch_initcall(board_init);
ASoC DAPM widgets
| Name | Description |
|---|---|
| OUT0 | VOUT0 DAC Output |
| OUT1 | VOUT1 DAC Output |
| OUT2 | VOUT2 DAC Output |
| OUT3 | VOUT3 DAC Output |
| IN0 | Analog Audio Input 0 (ADC0) |
| IN1 | Analog Audio Input 1 (ADC1) |
ALSA controls
| Name | Description |
|---|---|
| Master Capture Switch | Mute/Unmute the ADCs |
DAI Configuration
The CODEC driver register one DAI called “adau1701”.
Supported DAI formats
| Name | Supported by driver | Description |
|---|---|---|
| SND_SOC_DAIFMT_I2S | yes | I2S mode |
| SND_SOC_DAIFMT_RIGHT_J | yes | Right Justified mode |
| SND_SOC_DAIFMT_LEFT_J | yes | Left Justified mode |
| SND_SOC_DAIFMT_DSP_A | no | data MSB after FRM LRC |
| SND_SOC_DAIFMT_DSP_B | no | data MSB during FRM LRC |
| SND_SOC_DAIFMT_AC97 | no | AC97 mode |
| SND_SOC_DAIFMT_PDM | no | Pulse density modulation |
| SND_SOC_DAIFMT_NB_NF | yes | Normal bit- and frameclock |
| SND_SOC_DAIFMT_NB_IF | yes | Normal bitclock, inverted frameclock |
| SND_SOC_DAIFMT_IB_NF | yes | Inverted frameclock, normal bitclock |
| SND_SOC_DAIFMT_IB_IF | yes | Inverted bit- and frameclock |
| SND_SOC_DAIFMT_CBM_CFM | yes | Codec bit- and frameclock master |
| SND_SOC_DAIFMT_CBS_CFM | no | Codec bitclock slave, frameclock master |
| SND_SOC_DAIFMT_CBM_CFS | no | Codec bitclock master, frameclock slave |
| SND_SOC_DAIFMT_CBS_CFS | yes | Codec bit- and frameclock slave |
Sysclk Configuration
The sysclk source can be either be generated using the internal oscillator and an external crystal, or can come from an external clock signal.
enum adau1701_clk_src { ADAU1701_CLK_SRC_OSC, ADAU1701_CLK_SRC_MCLK, };
The sysclk rate is configured using the PLL_MODE0 and PLL_MODE1 pins. Though for completeness it should also be passed to snd_soc_dai_set_sysclk.
Example DAI Configuration
static int bfin_eval_adau1701_hw_params(struct snd_pcm_substream *substream, struct snd_pcm_hw_params *params) { struct snd_soc_pcm_runtime *rtd = substream->private_data; struct snd_soc_dai *cpu_dai = rtd->cpu_dai; struct snd_soc_dai *codec_dai = rtd->codec_dai; int ret; ? ret = snd_soc_dai_set_fmt(cpu_dai, SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBM_CFM); if (ret) return ret; ? ret = snd_soc_dai_set_fmt(codec_dai, SND_SOC_DAIFMT_I2S | SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_CBM_CFM); if (ret) return ret; ? ret = snd_soc_dai_set_sysclk(codec_dai, ADAU1701_CLK_SRC_OSC, 12288000, SND_SOC_CLOCK_IN); ? return ret; } ? static struct snd_soc_ops bfin_eval_adau1701_ops = { .hw_params = bfin_eval_adau1701_hw_params, }; ? static struct snd_soc_dai_link bfin_eval_adau1701_dai = { .name = "adau1701", .stream_name = "adau1701", .cpu_dai_name = "bfin-i2s.0", .codec_dai_name = "adau1701", .platform_name = "bfin-i2s-pcm-audio", .codec_name = "adau1701.0-0034", .ops = &bfin_eval_adau1701_ops, };
Generate the firmware file
In order to use the SigmaDSP core of the ADAU1701 you need to provide a firmware file. Please refer to the SigmaDSP Firmware Utility for Linux page on how to generate a firmware file. The firmware file for ADAU1701 driver has to be named adau1701.bin.
ADAU1701 evaluation board driver
There is no dedicated Blackfin STAMP evaluation board for the ADAU1701. During test and driver development we used the EVAL-ADAU1701MINIZ board.
It can be easily wired to the Blackfin STAMP SPORT header.
Source Code
Status
Files
| Function | File |
|---|---|
| driver | sound/soc/blackfin/bfin-eval-adau1701.c |
Kernel configuration
Device Drivers ---> [*] I2C support ---> [*] I2C Hardware Bus support ---> *** I2C system bus drivers (mostly embedded / system-on-chip) *** <*> Blackfin TWI I2C support (100) Blackfin TWI I2C clock (kHz)
Enable ALSA SoC evaluation board driver:
Device Drivers --->Sound card support ---> Advanced Linux Sound Architecture ---> ALSA for SoC audio support ---> Support for the EVAL-ADAU1701 boards on Blackfin eval boards
Hardware configuration
TODO
Driver testing
Load the driver and make sure the sound card is properly instantiated.
This specifies any shell prompt running on the target
root:/> modprobe snd-bf5xx-i2s root:/> modprobe snd-soc-bf5xx-i2s root:/> modprobe snd-soc-adau1701 root:/> modprobe snd-soc-bfin-eval-adau1701 dma rx:3 tx:4, err irq:45, regs:ffc00800 asoc: ADAU1701 <-> bf5xx-i2s mapping ok
This specifies any shell prompt running on the target
root:/> modprobe snd-pcm-oss root:/> tone TONE: generating sine wave at 1000 Hz... root:/> arecord -f cd | aplay Recording WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo Playing WAVE 'stdin' : Signed 16 bit Little Endian, Rate 44100 Hz, Stereo
More information
掃碼添加小助手
加入工程師交流群
- AN-923: 在自引導(dǎo)模式下使用ADAU1701/ADAU1702設(shè)計(jì)系統(tǒng)
- 用于Raspberry Pi的高分辨率流媒體(ADAU1701與TPA3255)
- CN0162 通過ADAU1701 SigmaDSP編解碼器、低功耗SSM2306 D類放大器和ADP3336 LDO調(diào)節(jié)器實(shí)現(xiàn)模擬音頻輸入、D類輸出
- AD1836聲音Linux漂流器
- ADAU1361聲音編解碼器Linux驅(qū)動(dòng)程序
- SM2602聲音Linux漂流器
- ADAU1977聲音Linux漂流器
- ADAU第1373聲音編解碼器Linux驅(qū)動(dòng)程序
- ADAU1781聲音編解碼器Linux驅(qū)動(dòng)程序
- SM2518聲音Linux漂流器
- ADAU1701:帶兩個(gè)ADC和四個(gè)DAC的SigmaDSP 28/56位音頻處理器產(chǎn)品手冊(cè)
- 基于EVAL-ADAU1701EB音頻處理器的參考設(shè)計(jì)
- adau1701開發(fā)板原理圖高清版免費(fèi)下載 0次下載
- adau1701原文資料數(shù)據(jù)手冊(cè)PDF免費(fèi)下載(音頻處理器) 64次下載
- 在自引導(dǎo)模式下使用ADAU1701_ADAU1702設(shè)計(jì)系統(tǒng) 150次下載
- MAX4298/MAX4299:適用于嚴(yán)苛環(huán)境的音頻系統(tǒng)IC 1.3k次閱讀
- ROHM BD37544FS:汽車音頻的高性能聲音處理器 125次閱讀
- ADAU1701 SigmaDSP 28/56 Bit音頻處理器,內(nèi)置2個(gè)ADC和4個(gè)DAC技術(shù)手冊(cè) 1.7k次閱讀
- ADAU1761集成PLL的SIGMADSP立體聲、低功耗、96KHZ、24位音頻編解碼器技術(shù)手冊(cè) 1k次閱讀
- ADAU1442/ADAU1445/ADAU1446 SigmaDSP數(shù)字音頻處理器,具有靈活的音頻路由矩陣技術(shù)手冊(cè) 1k次閱讀
- ADAU1452/ADAU1451/ADAU1450 SigmaDSP數(shù)字音頻處理器技術(shù)手冊(cè) 1.5k次閱讀
- 環(huán)繞聲系統(tǒng)的基本概念、主要類型及關(guān)鍵技術(shù) 2.9k次閱讀
- 沉浸式音頻的未來:計(jì)算機(jī)視覺輔助下的聲音重現(xiàn) 2.3k次閱讀
- 使用可視音頻設(shè)計(jì)高效、實(shí)時(shí)的音頻系統(tǒng) 1.7k次閱讀
- 最大限度地減少音頻系統(tǒng)中模擬開關(guān)的總諧波失真 3k次閱讀
- 如何實(shí)現(xiàn)音頻系統(tǒng)的2路揚(yáng)聲器箱設(shè)計(jì) 2.4k次閱讀
- 基于USound公司的先進(jìn)個(gè)人MEMS技術(shù)應(yīng)用音頻系統(tǒng) 4.4k次閱讀
- 單芯片音頻系統(tǒng)ADAU1401的特點(diǎn)性能及應(yīng)用電路 9k次閱讀
- 以數(shù)字音頻系統(tǒng)為例介紹音頻系統(tǒng)的構(gòu)建 5k次閱讀
- adau1701的優(yōu)點(diǎn)及缺點(diǎn)分析 2.1w次閱讀
下載排行
本周
- 1新一代網(wǎng)絡(luò)可視化(NPB 2.0)
- 3.40 MB | 1次下載 | 免費(fèi)
- 2MDD品牌三極管MMBT3906數(shù)據(jù)手冊(cè)
- 2.33 MB | 次下載 | 免費(fèi)
- 3MDD品牌三極管S9012數(shù)據(jù)手冊(cè)
- 2.62 MB | 次下載 | 免費(fèi)
- 4聯(lián)想flex2-14D/15D說明書
- 4.92 MB | 次下載 | 免費(fèi)
- 5收音環(huán)繞擴(kuò)音機(jī) AVR-1507手冊(cè)
- 2.50 MB | 次下載 | 免費(fèi)
- 624Pin Type-C連接器設(shè)計(jì)報(bào)告
- 1.06 MB | 次下載 | 免費(fèi)
- 7MS1000TA 超聲波測(cè)量模擬前端芯片技術(shù)手冊(cè)
- 0.60 MB | 次下載 | 免費(fèi)
- 8MS1022高精度時(shí)間測(cè)量(TDC)電路數(shù)據(jù)手冊(cè)
- 1.81 MB | 次下載 | 免費(fèi)
本月
- 1愛華AIWA HS-J202維修手冊(cè)
- 3.34 MB | 37次下載 | 免費(fèi)
- 2PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 23次下載 | 免費(fèi)
- 3NB-IoT芯片廠商的資料說明
- 0.31 MB | 22次下載 | 1 積分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供電電路圖資料
- 0.63 MB | 6次下載 | 1 積分
- 5UWB653Pro USB口測(cè)距通信定位模塊規(guī)格書
- 838.47 KB | 5次下載 | 免費(fèi)
- 6技嘉H110主板IT8628E_BX IO電路圖資料
- 2.61 MB | 4次下載 | 1 積分
- 7蘇泊爾DCL6907(即CHK-S007)單芯片電磁爐原理圖資料
- 0.04 MB | 4次下載 | 1 積分
- 8100W準(zhǔn)諧振反激式恒流電源電路圖資料
- 0.09 MB | 2次下載 | 1 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191439次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183353次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81602次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73822次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發(fā)燒友App





創(chuàng)作
發(fā)文章
發(fā)帖
提問
發(fā)資料
發(fā)視頻
上傳資料賺積分
評(píng)論