Hifive 1 with audio

I just got HiFive 1 board and set up the Arduino IDE. I want to record audio with this board and port some audio processing algorithms to it. My question is: what Arduino shields should I buy and where can I start the software program? Pls advise. Thanks!

BTW, I am new to Arduino so I’m not sure whether it is the suitable platform for me to port algorithms.

How much audio are you planning to record, and where are you planning to store it?

The HiFive1 only has 16 KB of RAM (which is generous for an Arduino-style board), and no SD card.

There is also no analogue to digital input, so you’ll have to find a shield with that.

The good news: the CPU is fast for running algorithms on.

I just want to test it, so the limitation of RAM does no matter.
@brucehoult So do you know any shields which can do that? I can use an I2S microphone or I can find a shield which converts analog signals into digital and output those signals with I2S interface. If it’s possible for HiFive1 to have an I2S driver, then things will be done.

I can google, but I’ve never used a shield with that before.

I2S has a clock signal, but the data runs at a highish multiple of the clock speed, of several Mbps depending on your audio sample size and Hz, so timing is pretty critical. Should not be a problem if you can write code that just polls the input pins and little else. Actually, you could probably manage it with a timer interrupt ok too.

Things would be a lot easier if you had a shield that added a little bit of FIFO buffer and presented an SPI slave interface to the HiFive1.

Thanks! It’s possible to transmit audio data via SPI interface, as once I saw a demo application note from ST. Anyway, it’s not that easy.