Implementation of goertzel algorithm in C
It's been a while, but if anyone would like a working fixed-point implementation (no floats/doubles) in C you might take a look at: http://www.ti.com/ww/cn/uprogram/share/ppt/c6000/Chapter17.ppt‎
– Slide 14.

It looks like it will work beautifully and efficiently in even a low-powered micro-controller.
(In which case some of the ‘int’ variables in that TI C code may need to become ‘longs’ to be 32-bit.)