Sha256: f37475d0e0c22bb1b448ea98b2022a120fa8518907c6d4200ce36c9b191f9202
Contents?: true
Size: 1.12 KB
Versions: 1
Compression:
Stored size: 1.12 KB
Contents
class Radio class PSK31 class Rx def initialize sample_rate, format, frequency @filter = Filters.new sample_rate, format, frequency, :dec6 => FIR_DEC6, :dec16 => FIR_DEC16, :dec4 => FIR_DEC4, :bit => FIR_BIT @bit_detect = BitDetect.new @decoder = Decoder.new end def call sample_data decoded = '' @filter.call sample_data do |i, q| @bit_detect.call i, q do @decoder.call i, q do |symbol| decoded += symbol end end end decoded end def frequency= frequency if frequency != @filter.frequency @filter.frequency = frequency @filter.recalc_phase_inc reset end end # To compensate for bad clock in A-D conversion def adjust_sample_clock ppm @filter.clock = 8000.0 * ppm / 1000000 + 8000 @filter.recalc_phase_inc end def reset @filter.reset @bit_detect.reset @decoder.reset end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
radio-0.0.1 | lib/radio/psk31/rx.rb |