For a university project we have been tasked with implementing a digital signal processing system on an STM32 discovery board in which we must model the AM channel to measure and graphically display the channel characteristics of the AM band (526.5 – 1606.5 kHz with 9kHz channel spacing in my country). The user should be able to select which channel (at 9kHz intervals) they would like to see and we'll have to use digital filtering techniques to display the FFT of that 'chosen channel' in addition to producing the demodulated output signal using the boards DAC.
I thought a good place to begin would be with an anti-aliasing filter to limit the input signal within the band between 526.5 – 1606.5, which is a band of 1.08MHz. According to Nyquist's theory I should sample at twice the highest frequency content of the signal which is 1.6065MHz, so sample at 3.2MHz. For the boards ADCs this is pretty demanding. I'd like to know if it would be possible to shift this range back to baseband such that the highest frequency component is \$1606.5kHz - 526.5kHz = 1080kHz\$ and then I would only need to sample at twice this frequency which is 2.16MHz.
I wondered if someone could tell me if this would be possible and point me in the right direction of how to do so.
edit: I've read about so called "bandpass undersampling techniques". Given a bandpass signal, if the bandedge frequencies, \$f_L\$ and \$f_H\$, are integer multiples of the signal bandwidth, then the signal can be sampled at a theoretical minimum rate of 2B without aliasing:
\$F_s(min) = 2B\$
The equation above is valid provided the ratios of the lower bandedge to the signal bandwidth and/or the upper band edge to the signal bandwidth are integers:
\$n = \frac{f_H}{B}\$ or \$n=\frac{f_L}{B}\$
If the signal band is not integer positioned, the band edge frequencies can be extended such that the band becomes integer positioned.
In my case I have
\$n = \frac{f_H}{B} = \frac{1606.5kHz}{1.08MHz} = 1.4875\$
It is possible to reduce the lower band edge frequency to a new given value by choosing the nearest integer value of n through the formula:
\$f_L' = (\frac{n-1}{n})f_H\$
but in my case if I choose n=1 then this makes the new lower band edge frequency 0Hz? Then the new bandwidth becomes 1606.5kHz - 0 and Fs is 3.2MHz, so this hasn't made any difference.