High Performance Digital MEMS Microphone's Simple Interface to SigmaDSP Audio Processor with I2S Output
Up to two ADMP441 MEMS microphones can be input to a single data line on the ADAU1446 SigmaDSP audio processor. The ADAU1446 can be set up with up to nine serial data inputs, so up to eighteen ADMP441’s can input to a single audio processor.
Figure 1. Microphone Connection to SigmaDSP Audio Processor (Simplified Schematic: Power Supply Decoupling and All Connections Not Shown)
The ADMP441 digital MEMS microphones are connected to the ADAU1446’s SDATA_IN pins. The only necessary passive components in this circuit are a single 0.1 μF bypass capacitor for each ADMP441 and a large pull-down resistor (100 kΩ) on the SD line to discharge it while the ADMP441’s output drivers are tri-stated. The bypass capacitors should be placed as close to the ADMP441 VDD pin (Pin 7) as possible.
Figure 2. SigmaStudio Serial Input Port Configuration for ADMP441 Microphone Input to ADAU1446
The MEMs microphone’s VDD should be supplied from the same source as the ADAU1446’s 3.3 V IOVDD. Even though the ADMP441 can operate with VDD between 1.8 V and 3.3 V, IOVDD on the ADAU1446 must be 3.3 V.
There are three signals that need to be connected between the ADMP441 and ADAU1446 for the I2S data stream: frame clock, bit clock, and data. Table 1 shows the connections when using the ADAU1446’s serial data input port 0.
The L/R pin on the two ADMP441’s should be set to opposite settings—one pulled to VDD, and the other to ground. When pulled to GND, the microphone will output its data on the left channel of the I2S stream, and when pulled to VDD, it will output its data on the right channel.
The ADMP441 is enabled by pulling the CHIPEN pin high. This pin can either be tied directly to the microphone’s VDD, which will keep it always enabled while it is powered, or it could be connected to a GPIO on the ADAU1446, allowing the SigmaDSP to enable and disable the microphone.
The ADMP441 has a sensitivity of −26 dBFS. In most applications, the microphone output needs to have some gain added in the ADAU1446’s signal flow. The SigmaDSP core can add up to 24 dB of gain to the input signal before a full-scale signal at 120 dB SPL is clipped. If gain is added to the signal in the SigmaDSP, then the processor’s output must still be limited to 0 dBFS.
Register 0xE000 must be set in the ADAU1446 to enable its serial input port for I2S input. When this register is set to 0xA4 0x00, Serial Input Port 0 will be configured for:
- Enabling the clock outputs.
- 50% duty cycle clock.
- 48 kHz clock master.
- Data changes on the falling edge of BCLK, clocked on the BCLK rising edge.
- LRCLK polarity set for left channel low, right channel high.
- 24-bit, I2S data format.
A screenshot of the SigmaStudio register controls for the serial input port is shown in Figure 2.
The register settings described here are for using serial input port 0 with clock input 0, but they could be applied to any of the nine serial input ports. Serial inputs 1–8 are controlled with registers 0xE001 to 0xE008. If any of these serial input ports are connected to additional ADMP441 MEMS microphones, the corresponding registers should be set in the same way as serial input port 0 described above.
In the SigmaStudio schematic, the data from serial input port 0 is on pins 0 and 1 of the Input cell. The left channel is on pin 0 and the right channel on pin 1. Figure 3 shows a simple SigmaStudio schematic with two audio channels going through a volume control to the outputs.
Figure 3. SigmaStudio Schematic with Stereo Input on Serial Input Port 0
This circuit can also be set up with an ADAU1442 or ADAU1445 instead of the ADAU1446. The difference between these processors is that the ADAU1446 does not have any asynchronous sample rate converters (ASRCs), and the ADAU1442 and ADAU1445 have different numbers of ASRC channels. These other processors with ASRCs could be used if microphones are to be run at different sampling rates or if multiple I2S master devices need to be connected to the processor. The ADAU1442, ADAU1445, and ADAU1446 are all pin-compatible.
A mono MEMS microphone circuit using a single ADMP441 can be set up by simply removing one of the ADMP441 MEMS microphones. The other connections remain the same in this mono configuration.
Additional ADMP441 MEMS microphones can be connected to the
ADAU1446’s serial input ports in the same way as the first
The SigmaStudio GUI software requires a PC meeting the following: Windows® 7, Windows Vista, or Windows XP Professional or Home Edition with SP2, 128 MB of RAM (256 MB recommended), 50 MB of available hard disk space, 1024 × 768 screen resolution, USB 2.0 data port.
In addition, the ADAU1446 Evaluation Board
(EVAL-ADAU1446EBZ) and the ADMP441 Evaluation
Board (EVAL-ADMP441-FLEX) are needed.
The EVAL-ADMP441Z-FLEX has eight output wires including VDD, ground, data, and clocks. The VDD wire should be connected to IOVDD on the EVAL-ADAU1446EBZ. The ADMP441 board’s serial data port signals (SD, WS, and SCK) can be connected to the appropriate serial data inputs on header J21.
Complete documentation for the EVAL-ADAU1446EBZ evaluation board can be found in User Guide UG-032.
Complete documentation for the EVAL-ADMP441Z-FLEX evaluation board can be found in User Guide UG-303.
The SigmaStudio™ software is used to program and
tune the registers and SigmaDSP core in the ADAU1446.
SigmaStudio is available to download from
Functional Block Diagram
The documentation for the ADAU1446 evaluation board describes the system setup and gives a complete schematic of the board. The only external connections required are the USB connection to the PC and to the audio outputs of the ADAU1446.
Setup and Test
See the EVAL-ADAU1446EBZ board documentation for additional details regarding circuit description, jumper settings, setup, and testing.