Frequency Mod: Difference between revisions

From GNU Radio
Jump to navigation Jump to search
(added missing formula symbols, plus small typo fixes)
Line 23: Line 23:


; C++ files
; C++ files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-analog/lib/frequency_modulator_fc_impl.cc frequency_modulator_fc_impl.cc]


; Header files
; Header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-analog/lib/frequency_modulator_fc_impl.h frequency_modulator_fc_impl.h]


; Public header files
; Public header files
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-analog/include/gnuradio/analog/frequency_modulator_fc.h frequency_modulator_fc.h]


; Block definition
; Block definition
: [https://github.com/gnuradio/gnuradio TODO]
: [https://github.com/gnuradio/gnuradio/blob/main/gr-analog/grc/analog_frequency_modulator_fc.block.yml analog_frequency_modulator_fc.block.yml]

Revision as of 14:20, 29 March 2024

This block is an input amplitude controlled complex sine. It outputs a signal, which has a momentary phase increase that is proportional to sensitivity and input amplitude.

More specifically, takes a real, baseband signal (x_m[n]) and output a frequency modulated signal (y[n]) according to:

Freq-mod-1.png

Where x[n] is the input sample at time n and is the frequency deviation. Common values for are 5 kHz for narrowband FM channels such as for voice systems and 75 kHz for wideband FM, like audio broadcast FM stations. In this block, the input argument is sensitivity, not the frequency deviation. The sensitivity specifies how much the phase changes based on the new input sample. Given a maximum deviation , and sample rate , the sensitivity is defined as:

Freq-mod-2.png

Parameters

(R): Run-time adjustable

Sensitivity (R)
radians/sample = amplitude * sensitivity

Example Flowgraph

NFM xmt 2 fg.png

Source Files

C++ files
frequency_modulator_fc_impl.cc
Header files
frequency_modulator_fc_impl.h
Public header files
frequency_modulator_fc.h
Block definition
analog_frequency_modulator_fc.block.yml