VFO Up to 15 MHz: An Implementation With Raspberry Pi Pico
on
This tunable oscillator serves as an auxiliary oscillator for shortwave reception. It can be used to listen to signals without their own carrier using a normal AM shortwave radio receiver. It can then be used to receive SSB, CW, or digital signals such as FT8 if the frequency is tuned precisely to the carrier. A Raspberry Pi Pico, whose programmable input/output (PIO) is programmed using assembly language, is sufficient to generate the RF signal.
A short antenna in the form of a resistor at the output of GPIO15 transmits the signal. The RF signal is generated by a PIO assembler program vfo.pio simply by switching the port pin on and off with a counting loop for delay. The program runs at the maximum clock rate and only needs one clock cycle per command. Additional counting loops are the only way to make things slower. This delay can be controlled from the outside.
The assembler program uses each given cycle period twice, because the actual bottleneck is the transfer loop in th...
