discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] A Chunks to Symbols Related Question


From: Tom Rondeau
Subject: Re: [Discuss-gnuradio] A Chunks to Symbols Related Question
Date: Sun, 15 Jan 2012 23:05:16 -0500

On Thu, Jan 12, 2012 at 11:15 AM, Domenic Magazu III <address@hidden> wrote:
All,
     In creating an application that requires Pulse Position Modulation we generated a GRC file using the chunks to symbols block.  Everything worked perfectly except in small areas where we need the amplitude to remain unchanged (~ at zero).  1s are mapped to 10 and 0's are mapped to 01.  Does anybody have input or ideas on how to create 'space' for lack of a better word between 1's and 0's at desired points. 
 
Example 1010_____0101_______
 
Amplitude increase at 0 seconds for 10 and increase at 1 microsecond for the second 10.  Then there should be a gap in amplitude change and continue with amplitude change for 01 01...so on and so on.
 
Thank you
Domenic

For this one, the best thing might be to make your own block that handles this.

The other thing that I'll suggest, and you'll have to play with it to see if it'll actually work, is to use the sample_and_hold block.  If you can generate a square wave with the period that you want out of the signal, you can use that as the control line into this block. The work function is simple (and pasted below); it's in the gnuradio-core/src/lib/gengen directory, which is why it looks the way it does with the @address@hidden

Tom


int
@NAME@::work (int noutput_items,
  gr_vector_const_void_star &input_items,
  gr_vector_void_star &output_items)
{
  @I_TYPE@ *iptr = (@I_TYPE@ *) input_items[0];
  const char *ctrl = (const char *) input_items[1];
  @O_TYPE@ *optr = (@O_TYPE@ *) output_items[0];

  for (int i = 0; i < noutput_items; i++){
    if(ctrl[i]) {
      d_data = iptr[i];
    }
    optr[i] = d_data;
  }
  return noutput_items;
}

reply via email to

[Prev in Thread] Current Thread [Next in Thread]