Android Open Source - APSK I Q F I R Filter






From Project

Back to project page APSK.

License

The source code is released under:

GNU General Public License

If you think the Android project APSK listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * This file is part of znudigi.//from   ww w. j a v a2s . c  om
 * Released under GNU GENERAL PUBLIC LICENSE Version 2
 * See file COPYING.
 * Copyright (C) 2007-2008 Leigh L. Klotz, Jr. <Leigh@WA5ZNU.org>
 */

package org.wa5znu.znuradio.dsp;

public class IQFIRFilter extends BaseFIRFilter {

  double xI[];
  double xQ[];
  int counter=0;

  public IQFIRFilter(int decimation) {
    super(decimation);
  }

  public void implement(FilterDesign design) {
    super.implement(design);
    if (xI == null || xI.length != taps) {
      xI = new double[taps];
      xQ = new double[taps];
      for(int k = 0; k < taps; k++) {
  xI[k] = 0.0;
  xQ[k] = 0.0;
      }
    }
  }

  public Complex[] filter(Complex io[], int nSamples) {
    int j = 0;
    int taps = a.length;
    for (int i = 0; i < nSamples; i++) {
      xI[0] = io[i].Re();
      xQ[0] = io[i].Im();
      if (++counter == decimation) {
  counter = 0;
  double yI = 0.0;
  double yQ = 0.0;
  for (int k = 0; k < taps; k++) {
    yI += xI[k]*(a[k]);
    yQ += xQ[k]*(a[k]);
  }
  io[j++] = new Complex(yI, yQ);
      }
      for(int k = taps - 1; k > 0; k--) {
  xI[k] = xI[k - 1];
  xQ[k] = xQ[k - 1];
      }
    }
    return io;
  }

}




Java Source Code List

net.thinkindifferent.apsk.APSK.java
net.thinkindifferent.apsk.AudioInputThread.java
net.thinkindifferent.apsk.Waterfall.java
org.wa5znu.znuradio.dsp.BaseFIRFilter.java
org.wa5znu.znuradio.dsp.Complex.java
org.wa5znu.znuradio.dsp.FFT.java
org.wa5znu.znuradio.dsp.FilterDesign.java
org.wa5znu.znuradio.dsp.IQFIRFilter.java
org.wa5znu.znuradio.dsp.LowPassFilterDesign.java
org.wa5znu.znuradio.dsp.Mixer.java
org.wa5znu.znuradio.dsp.RealFIRFilter.java
org.wa5znu.znuradio.dsp.Subsampler.java
org.wa5znu.znuradio.dsp.UnitPhasor.java
org.wa5znu.znuradio.dsp.Window.java
org.wa5znu.znuradio.modems.bpsk.BPSKDemodulator.java
org.wa5znu.znuradio.modems.bpsk.PSKVaricode.java
org.wa5znu.znuradio.receiver.Controller.java
org.wa5znu.znuradio.receiver.Demodulator.java
org.wa5znu.znuradio.receiver.FrequencyHandler.java
org.wa5znu.znuradio.receiver.ModemThread.java
org.wa5znu.znuradio.receiver.PhaseHandler.java
org.wa5znu.znuradio.receiver.ReceiverHandler.java
org.wa5znu.znuradio.receiver.Receiver.java
org.wa5znu.znuradio.receiver.SpectrumHandler.java
org.wa5znu.znuradio.receiver.SpectrumThread.java
org.wa5znu.znuradio.receiver.StageHandler.java
org.wa5znu.znuradio.receiver.TextHandler.java
org.wa5znu.znuradio.receiver.WaveHandler.java