I want to:
-
Input an analog audio track
-
Using the microcontroller ADC, convert it to a digital output
-
Then have the microcontollers/boards timer sample the data at selected intervals
-
Resample the "Sampled audio track" at twice the highest frequency content
-
Convert it back to analog as a perfect reconstruction of the initial audio track
Using Fourier Analysis I will determine the highest frequency at which I will sample the track at.
It sounds easy enough and straight forward, but what I need is to program this in C and utilize my MSP430 chip/experimenters board to sample the track.
I'm going to be using Texas Instruments CCS and Octave for my programming and debugging. I am using the MSP430F5438 Experimenter Board.
Is C the right language for this? Can I get any examples of how to sample the track at Nyquist frequency using C? What code in C will tell the board to utilize the ADC component? And any recommended information that is similar or that will help me on this project.
Best Answer
You can do your entire project in a desktop PC. In fact, if I had to do it, I would start with the desktop:
I believe I would implement this in several passes, for ease of debugging:
This may seem like a lot of steps, but it is much more likely to make a working result than heroically coding everything up in one huge MSP430 application, then trying to debug it on the dev board.