Interphasing I2S MEMS microphone with Arduino

hi , recently i have brought a Digital MEMS mmicrophone o/p is I2S type http://www.analog.com/media/en/technical-documentation/obsolete-data-sheets/ADMP441.pdf

I want to connect this MEMS mic using SPI comm protocal to arduino mega2560 in this way

for pic see the attachment

suggest me a 5 bit binar counter (counts upto 32 clock cyclyes then o/p RCO =High) to achive the the o/p data shown in data sheet

for data in n out of MEMS mic as per Word select(WS) , Clk plz see the attchment -MONO CHANNEL DATA either left or right

SPI i2s.png

naidu003:
suggest me a 5 bit binar counter (counts upto 32 clock cyclyes then o/p RCO =High) to achive the the o/p data shown in data sheet

for data in n out of MEMS mic as per Word select(WS) , Clk plz see the attchment -MONO CHANNEL DATA either left or right

Why on earth do you need it? WS and CLK can easily be synchronized in software.

Really , how to do that ?

can i have any documentations or demos on achieving I2s comm through SPI comm

as i knew SPI comm protocal is 8 bit byte data but I2s ouptut is 64 bit word data, i want one channes 32 bit data

Master (mega2560) Slave(ADMP441)

SCK -------SCK

MOSI------- Word select (WS) how to manipulate this pin to toggle for every 32 bit ?

MISO------- Serail Data (SD) output of MEMS mic which is having 32 bit MSB+LSB of one channel

CS-----------CS

Curious what you want to do with that high volume audio datastream.
Record to the Mega's flash memory?
Leo..

Wawa:
Curious what you want to do with that high volume audio datastream.
Record to the Mega's flash memory?
Leo..

I wanted to record the voice samples and stores the recorded files in microSDcard

naidu003:
I wanted to record the voice samples and stores the recorded files in microSDcard

No idea if that is able to keep up with 48k*24bit=1.152.000bits/sec
Seems a lot for an Arduino.
Leo..