I have been playing around with the 1381, trying to detect audio.
Basicaly, I have the 1381 hooked up to an iPod. I would like to be able to tell if the iPod is playing a song or not.
Can the 1381 do this?
The ADAU1381 is a fixed-function processor; its signal processing is a fixed signal flow. If you need to write your own signal processing flow, then you should look at the ADAU1781 or one of our other SigmaDSP ICs.
What specifically are you trying to do with the audio detection? You could use a SigmaDSP to detect the level of an input signal, and output a flag to indicate that the signal has crossed this threshold. What do you want to do with this detection? The SigmaDSPs cannot wake themselves up on the detection of an input signal.
If you can provide some further detail on what you're trying to do, we can probably better answer your question.
Thanks for the quick reply,
Like I mentioned, I have the ADAU1381 hooked up to an iPod. In normal operation the 1381 consumes anaolg audio from the iPod and passes a digital signal to a MCU. The MCU is powered by the iPod and consumes its fair shar of power, I would like to keep it off as much as possible to prolong battery life. So I would use the ADC's audio detection to control the power state of the MCU.
I should also mention that my hardware has two MCU's. What I envision is MCU_1 asking the 1381 if the iPod is passing audio (via I2C), if true then power off MCU_2.
You could likely do something like this in a SigmaDSP project, but you cannot do this with the ADAU1381's fixed-function processing. In order to implement this, you could have an RMS table block (in the Level Detectors/Lookup Tables section of the SigmaStudio library) set up to output a 0 or a 1, depending on the level of the input signal. You would probably want to set the detector's hold time to a long value, and the decay slow, so that the detector won't trip the flag back and forth simply during quiet parts of songs or in between tracks. Depending on the time constant that you need, you may need to use some logic following the detector to ensure that the flag only switches between 0 and 1 at the appropriate times for your application. This could be implemented with some of the basic DSP and counter blocks.
It is a year ago that his was raised. I am trying to "detect" audio in a certain frequency band (say a 1K tone or similar) and based on a threshold audio level at this frequency I need a GPIO output of some sort.
Would you be able to suggest anything or let me know if someone has done a project like this?
My previous post from last April describes how to do what you're asking in SigmaStudio. Am I misunderstanding this? Are you looking for something different? Note that the ADAU1381 is a fixed-function processor and cannot be programmed with a custom signal flow like this. Any of the SigmaDSP ICs can do this sort of processing, though.
Thank you for your prompt reply.
I shall chase this up.
Ollencio (Olly) D'Souza
Tel: 61 2 9877 5084
Mob: 61 4 01 108 244
Retrieving data ...