I've been thinking about building some more test equipment for work. From what I've read I'm sure it's within an Arduino's capabilities (if not my own coding abilities). At this stage I just want to know if it's plausible.
I want to produce a FSK'd sine wave output at, say, a nominal 6kHz. I need to FSK the nominal frequency between an upper and lower limit, let's say +/- 50Hz. The waveform needs to shift between the upper and lower limits at a rate of 50Hz (so in essence it's toggling between 5950Hz and 6050Hz, 50 times a second).
The amplitude needs to be variable up to a maximum of 3.5V peak to peak. The amplitude can be controlled externally if necessary.
Can an arduino reliably produce such an output? If so, can it also produce another 10 such waveforms at different nominal frequencies? Only one needs to output any one time, so that's more a question of having enough memory rather than a hardware limitation. Naturally the arduino's output will be DC (or an AC wave with a DC offset, if that floats your boat). I would need to remove the DC portion somehow, perhaps with a coupling cap.
A second nice-to-have feature would be to receive a similar waveform on an input, measure it's amplitude and write it to, say, an LCD / LED display (that's probably the easy bit).
Is all this possible?