Author: trondeau
Date: 2007-06-06 20:22:25 -0600 (Wed, 06 Jun 2007)
New Revision: 5726
Modified:
gnuradio/branches/features/ofdm/sync/gnuradio-core/src/lib/general/gr_ofdm_qpsk_mapper.cc
Log:
working QAM16 over the air. The waveform works, but it needs work to generalize
and be configurable from a higher layer.
Modified:
gnuradio/branches/features/ofdm/sync/gnuradio-core/src/lib/general/gr_ofdm_qpsk_mapper.cc
===================================================================
---
gnuradio/branches/features/ofdm/sync/gnuradio-core/src/lib/general/gr_ofdm_qpsk_mapper.cc
2007-06-07 02:06:48 UTC (rev 5725)
+++
gnuradio/branches/features/ofdm/sync/gnuradio-core/src/lib/general/gr_ofdm_qpsk_mapper.cc
2007-06-07 02:22:25 UTC (rev 5726)
@@ -55,11 +55,12 @@
{
}
-static float
+static gr_complex
randombit()
{
- int r = rand()&1;
- return (float)(-1 + 2*r);
+ int r1 = rand()&1;
+ int r2 = rand()&1;
+ return gr_complex((0.707)*(-1 + 2*r1),(0.707)*(-1 + 2*r2));
}
int
@@ -110,7 +111,7 @@
unsigned char bit1 = (d_msg->msg()[d_msg_offset] >> (d_bit_offset)) & 0x01;
d_bit_offset++;
- out[i + zeros_on_left] = gr_complex(-1+2*(bit0), -1+2*(bit1) );
+ out[i + zeros_on_left] = gr_complex((0.707)*(-1+2*(bit0)),
(0.707)*(-1+2*(bit1)) );
i++;
if(d_bit_offset == 8) {
d_bit_offset = 0;
@@ -121,7 +122,7 @@
// Ran out of data to put in symbol
if (d_msg_offset == d_msg->length()) {
while(i < d_occupied_carriers) { // finish filling out the symbol
- out[i + zeros_on_left] = gr_complex(randombit(),0);
+ out[i + zeros_on_left] = randombit();
i++;
}
_______________________________________________
Commit-gnuradio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/commit-gnuradio