commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r5668 - in gnuradio/branches/developers/jcorgan/snd/gr


From: jcorgan
Subject: [Commit-gnuradio] r5668 - in gnuradio/branches/developers/jcorgan/snd/gr-sounder/src: fpga/lib fpga/tb fpga/top python
Date: Mon, 4 Jun 2007 14:03:12 -0600 (MDT)

Author: jcorgan
Date: 2007-06-04 14:03:11 -0600 (Mon, 04 Jun 2007)
New Revision: 5668

Modified:
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.rbf
   gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder.py
   
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
Log:
Work in progress, debugging receiver correlator.

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/lfsr_constants.v
   2007-06-04 20:03:11 UTC (rev 5668)
@@ -19,33 +19,48 @@
 //  Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
 //
 
-module lfsr_constants(degree_i,mask_o,len_o);
-   input  wire [4:0]  degree_i;
-   output reg  [15:0] mask_o;
-   output wire [15:0] len_o;
+module lfsr_constants(clk_i,rst_i,degree_i,mask_o,rx_len_o,tx_len_o);
+   input             clk_i;
+   input             rst_i;
+   input      [4:0]  degree_i;
+   output reg [15:0] mask_o;
+   output reg [16:0] tx_len_o;
+   output reg [16:0] rx_len_o;
+
+   integer len;
    
-   assign len_o = (1 << degree_i) - 1;
-   
-   always @*
-     case (degree_i)
-       5'd00: mask_o = 16'h0000;
-       5'd01: mask_o = 16'h0001;
-       5'd02: mask_o = 16'h0003;
-       5'd03: mask_o = 16'h0005;
-       5'd04: mask_o = 16'h0009;
-       5'd05: mask_o = 16'h0012;
-       5'd06: mask_o = 16'h0021;
-       5'd07: mask_o = 16'h0041;
-       5'd08: mask_o = 16'h008E;
-       5'd09: mask_o = 16'h0108;
-       5'd10: mask_o = 16'h0204;
-       5'd11: mask_o = 16'h0402;
-       5'd12: mask_o = 16'h0829;
-       5'd13: mask_o = 16'h100D;
-       5'd14: mask_o = 16'h2015;
-       5'd15: mask_o = 16'h4001;
-       5'd16: mask_o = 16'h8016;
-       default: mask_o = 16'h0000;
-     endcase // case(degree_i)
+   always @(posedge clk_i)
+     if (rst_i)
+       begin
+         tx_len_o <= 17'b0;
+         rx_len_o <= 17'b0;
+         mask_o <= 16'b0;
+       end
+     else
+       begin
+          tx_len_o <= (1 << degree_i)-2;
+         rx_len_o <= ((1 << degree_i) << 1)-3;
+         
+         case (degree_i)
+           5'd00: mask_o <= 16'h0000;
+           5'd01: mask_o <= 16'h0001;
+           5'd02: mask_o <= 16'h0003;
+           5'd03: mask_o <= 16'h0005;
+           5'd04: mask_o <= 16'h0009;
+           5'd05: mask_o <= 16'h0012;
+           5'd06: mask_o <= 16'h0021;
+           5'd07: mask_o <= 16'h0041;
+           5'd08: mask_o <= 16'h008E;
+           5'd09: mask_o <= 16'h0108;
+           5'd10: mask_o <= 16'h0204;
+           5'd11: mask_o <= 16'h0402;
+           5'd12: mask_o <= 16'h0829;
+           5'd13: mask_o <= 16'h100D;
+           5'd14: mask_o <= 16'h2015;
+           5'd15: mask_o <= 16'h4001;
+           5'd16: mask_o <= 16'h8016;
+           default: mask_o <= 16'h0000;
+          endcase // case(degree_i)
+       end // else: !if(rst_i)
 
 endmodule // lfsr_constants

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v  
2007-06-04 19:24:30 UTC (rev 5667)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder.v  
2007-06-04 20:03:11 UTC (rev 5668)
@@ -53,18 +53,27 @@
    wire         loopback;
 
    wire [4:0]   degree;
+   wire [13:0]          ampl;
    wire [15:0]          mask;
-   wire [15:0]          len;
+   wire [16:0]          tx_len;
+   wire [16:0]          rx_len;
 
    setting_reg #(`FR_USER_0) sr_mode
      ( 
.clock(clk_i),.reset(1'b0),.strobe(s_strobe_i),.addr(saddr_i),.in(sdata_i),
        .out({loopback,receive,transmit,reset}) );
 
    setting_reg #(`FR_USER_1) sr_lfsr_degree
-     ( 
.clock(clk_i),.reset(1'b0),.strobe(s_strobe_i),.addr(saddr_i),.in(sdata_i),.out(degree)
 );
+     ( 
.clock(clk_i),.reset(1'b0),.strobe(s_strobe_i),.addr(saddr_i),.in(sdata_i),
+       .out(degree) );
    
-   lfsr_constants constants(.degree_i(degree),.mask_o(mask),.len_o(len));
+   setting_reg #(`FR_USER_2) sr_lfsr_ampl
+     ( 
.clock(clk_i),.reset(1'b0),.strobe(s_strobe_i),.addr(saddr_i),.in(sdata_i),
+       .out(ampl) );
 
+   lfsr_constants constants
+     (.clk_i(clk_i),.rst_i(rst_i),.degree_i(degree),.mask_o(mask),
+      .rx_len_o(rx_len),.tx_len_o(tx_len) );
+
    // Loopback implementation
    wire [13:0] tx_i, tx_q;      
    wire [15:0] tx_i_ext, tx_q_ext;
@@ -80,13 +89,14 @@
    
    sounder_tx transmitter
      ( .clk_i(clk_i),.rst_i(reset),.ena_i(transmit),
-       .strobe_i(tx_strobe_i),.mask_i(mask),
+       .strobe_i(tx_strobe_i),.mask_i(mask),.ampl_i(ampl),
        .tx_i_o(tx_i),.tx_q_o(tx_q) );
    
    sounder_rx receiver
      ( .clk_i(clk_i),.rst_i(reset),.ena_i(receive),
-       
.rx_strobe_i(rx_strobe_i),.tx_strobe_i(tx_strobe_i),.mask_i(mask),.degree_i(degree),.len_i(len),
+       .rx_strobe_i(rx_strobe_i),.tx_strobe_i(tx_strobe_i),
+       .mask_i(mask),.degree_i(degree),.tx_len_i(tx_len),.rx_len_i(rx_len),
        
.rx_in_i_i(rx_i),.rx_in_q_i(rx_q),.rx_i_o(rx_imp_i_o),.rx_q_o(rx_imp_q_o),
-       .rx_strobe_o(rx_strobe_o),.loop_i(loopback));
+       .rx_strobe_o(rx_strobe_o));
 
 endmodule // sounder

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v   
    2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_rx.v   
    2007-06-04 20:03:11 UTC (rev 5668)
@@ -19,9 +19,9 @@
 //  Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
 //
 
-module 
sounder_rx(clk_i,rst_i,ena_i,rx_strobe_i,tx_strobe_i,mask_i,degree_i,len_i,
-                 rx_in_i_i,rx_in_q_i,rx_i_o,rx_q_o,rx_strobe_o,
-                 loop_i);
+module sounder_rx(clk_i,rst_i,ena_i,rx_strobe_i,tx_strobe_i,mask_i,degree_i,
+                 rx_len_i,tx_len_i,rx_in_i_i,rx_in_q_i,rx_i_o,rx_q_o,
+                 rx_strobe_o);
    
    input         clk_i;                // Master clock
    input         rst_i;         // Subsystem reset
@@ -31,7 +31,9 @@
     
    input  [15:0] mask_i;       // PN code LFSR mask
    input  [4:0]  degree_i;     // PN code LFSR sequency degree
-   input  [15:0] len_i;                // PN code LFSR sequence length
+   input  [16:0] rx_len_i;      // PN code length in receiver clocks
+   input  [16:0] tx_len_i;      // PN code length in transmit clocks
+   
    input  [15:0] rx_in_i_i;    // I channel on receive
    input  [15:0] rx_in_q_i;    // Q channel on receive
 
@@ -39,17 +41,17 @@
    output [15:0] rx_q_o;       // Q channel of impulse response
    output        rx_strobe_o;   // Impulse response value ready
 
-   input         loop_i;        // Implement loopback
-   
-   wire strobe_in  = loop_i ? tx_strobe_i : rx_strobe_i;
-   wire [16:0] len = loop_i ? (len_i - 1) : ((len_i << 1) - 2);
-                
-   strobe #(17) phase_strobe(.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),
-                      .rate_i(len),.strobe_i(strobe_in),.strobe_o(rx_strobe_o),
-                      .count_o());
+   strobe #(17) rx_phase_strobe(.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),
+                               
.rate_i(rx_len_i),.strobe_i(rx_strobe_i),.strobe_o(rx_strobe_o),
+                               .count_o());
 
+   wire        ref_skip;
+   strobe #(17) tx_phase_strobe(.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),
+                               
.rate_i(tx_len_i),.strobe_i(tx_strobe_i),.strobe_o(ref_skip),
+                               .count_o());
+
    wire pn_ref;
-   wire ref_strobe = tx_strobe_i & ~rx_strobe_o; // Retard reference phase 
once per period
+   wire ref_strobe = tx_strobe_i & ~ref_skip; // Retard reference phase once 
per period
    lfsr ref_code
      ( 
.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),.strobe_i(ref_strobe),.mask_i(mask_i),.pn_o(pn_ref)
 );
 
@@ -82,7 +84,7 @@
          sum_i <= 0;
          sum_q <= 0;
        end
-     else if (strobe_in)
+     else if (rx_strobe_i)
        begin
          sum_i = sum_i + prod_i;
          sum_q = sum_q + prod_q;

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v   
    2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/lib/sounder_tx.v   
    2007-06-04 20:03:11 UTC (rev 5668)
@@ -22,24 +22,23 @@
 `include "../../../../usrp/firmware/include/fpga_regs_common.v"
 `include "../../../../usrp/firmware/include/fpga_regs_standard.v"
 
-`define MAX_VALUE 14'h1FFF // 2s complement
-`define MIN_VALUE 14'h2001
-
-module sounder_tx(clk_i,rst_i,ena_i,strobe_i,mask_i,tx_i_o,tx_q_o);
+module sounder_tx(clk_i,rst_i,ena_i,strobe_i,ampl_i,mask_i,tx_i_o,tx_q_o);
    input         clk_i;
    input         rst_i;
    input         ena_i;
    input         strobe_i;
+   input  [13:0] ampl_i;
    input  [15:0] mask_i;
    output [13:0] tx_i_o;
    output [13:0] tx_q_o;
 
    wire          pn;
-
+   wire   [13:0] min_value = (~ampl_i)+14'b1;
+   
    lfsr pn_code
      ( 
.clk_i(clk_i),.rst_i(rst_i),.ena_i(ena_i),.strobe_i(strobe_i),.mask_i(mask_i),.pn_o(pn)
 );
 
-   assign tx_i_o = ena_i ? (pn ? `MAX_VALUE : `MIN_VALUE) : 14'b0; // Bipolar
+   assign tx_i_o = ena_i ? (pn ? ampl_i : min_value) : 14'b0; // Bipolar
    assign tx_q_o = 14'b0;
 
 endmodule // sounder_tx

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav  
    2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.sav  
    2007-06-04 20:03:11 UTC (rev 5668)
@@ -1,4 +1,4 @@
-*-24.753519 93900000 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 
-1 -1 -1 -1 -1 -1 -1
+*-30.950331 3972700000 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 
-1 -1 -1 -1 -1 -1 -1 -1
 @28
 sounder_tb.uut.clk_i
 sounder_tb.rst
@@ -6,7 +6,6 @@
 @22
 sounder_tb.sdata[31:0]
 @28
-sounder_tb.uut.reset
 sounder_tb.uut.transmit
 sounder_tb.uut.receive
 sounder_tb.uut.loopback
@@ -14,27 +13,34 @@
 -
 @22
 sounder_tb.uut.degree[4:0]
-sounder_tb.uut.len[15:0]
 @200
 -
address@hidden
-sounder_tb.tx_dac_i[13:0]
address@hidden
+sounder_tb.fifo_i[15:0]
+sounder_tb.fifo_q[15:0]
 @200
 -
 @22
-sounder_tb.fifo_strobe
address@hidden
-sounder_tb.fifo_i[15:0]
address@hidden
-sounder_tb.fifo_q[15:0]
+sounder_tb.tx_dac_i[13:0]
 @200
 -
+-
address@hidden
+sounder_tb.uut.reset
+sounder_tb.uut.receiver.rx_strobe_i
+sounder_tb.uut.receiver.tx_strobe_i
 @22
-sounder_tb.uut.transmitter.pn_code.pn_o
+sounder_tb.fifo_strobe
address@hidden
+sounder_tb.uut.receiver.ref_strobe
+sounder_tb.uut.transmitter.pn
 sounder_tb.uut.receiver.pn_ref
 @200
 -
address@hidden
-sounder_tb.tx_strobe
address@hidden
+sounder_tb.uut.receiver.rx_len_i[16:0]
+sounder_tb.uut.receiver.tx_len_i[16:0]
address@hidden
+sounder_tb.uut.receiver.prod_i[31:0]
 @8420
 sounder_tb.uut.receiver.sum_i[31:0]

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v    
    2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/tb/sounder_tb.v    
    2007-06-04 20:03:11 UTC (rev 5668)
@@ -19,7 +19,7 @@
 //  Foundation, Inc., 51 Franklin Street, Boston, MA  02110-1301  USA
 //
 
-`timescale 1ns/1ps
+`timescale 1ns/100ps
 
 `include "../lib/sounder.v"
 
@@ -30,6 +30,7 @@
 `define bmFR_MODE_LP            32'h0008
 
 `define FR_DEGREE              7'd65
+`define FR_AMPL                 7'd66
 
 module sounder_tb;
 
@@ -101,9 +102,10 @@
    
    initial
      begin
-       $monitor($time, " clk=%b rst=%b tx_strobe=%b fifo_strobe=%b phs=%x 
pn_o=%b pn_ref=%b fifo_i=%x fifo_q=", 
-                clk, uut.reset, tx_strobe, fifo_strobe, 
uut.receiver.phase_strobe.count_o,
-                uut.transmitter.pn, uut.receiver.pn_ref, fifo_i, fifo_q);
+       $monitor($time, " clk=%b rst=%b tx_strobe=%b fifo_strobe=%b rxphs=%x 
txphs=%x pn_o=%b pn_ref=%b sum_i=%x sum_q=%x fifo_i=%x fifo_q=", 
+                       clk, uut.reset, tx_strobe, fifo_strobe, 
uut.receiver.rx_phase_strobe.count_o,
+                       
uut.receiver.tx_phase_strobe.count_o,uut.transmitter.pn, uut.receiver.pn_ref, 
+                       uut.receiver.sum_i,uut.receiver.sum_q,fifo_i, fifo_q);
        $dumpfile("sounder_tb.vcd");
        $dumpvars(0, sounder_tb);
      end
@@ -141,6 +143,14 @@
       end
    endtask // set_degree
    
+   // Set the PN amplitude
+   task set_amplitude;
+      input [13:0] ampl;
+      begin
+        write_cfg_register(`FR_AMPL, ampl);
+      end
+   endtask // set_ampl
+   
    // Turn on or off the transmitter
    task enable_tx;
       input tx;
@@ -179,9 +189,12 @@
       begin
         #20 set_reset(1);
         #20 set_degree(degree);
+        #20 set_amplitude(14'h1000);
         #20 enable_tx(1);
+        #20 enable_rx(0);
+        #20 enable_lp(0);
         #20 set_reset(0);
-        #(uut.len*20);         // One PN code period
+        #(uut.rx_len*20);              // One PN code period
 
       end
    endtask // test_tx
@@ -197,16 +210,33 @@
         #20 enable_rx(1);
         #20 enable_lp(1);
         #20 set_reset(0);
-        #((uut.len+1)*uut.len*20*2);
+        #((uut.rx_len+1)*uut.rx_len*20*2);
       end
    endtask // test_lp
    
+   // Test receiver only functionality
+   task test_rx;
+      input [5:0] degree;
+      
+      begin
+        #20 set_reset(1);
+        #20 set_degree(degree);
+        #20 enable_tx(0);
+        #20 enable_rx(1);
+        #20 enable_lp(0);
+        #20 set_reset(0);
+        #((uut.rx_len+1)*uut.rx_len*20*2);
+      end
+   endtask // test_lp
+   
    // Execute tests
    initial
      begin
-        // #20 test_tx(12);
-       #20 test_lp(12);
+        #20 test_tx(8);
+       #20 test_lp(8);
+       #20 test_rx(8);
        #100 $finish;
      end
+
 endmodule
 

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/fpga/top/usrp_sounder.rbf
===================================================================
(Binary files differ)

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder.py
===================================================================
--- gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder.py   
2007-06-04 19:24:30 UTC (rev 5667)
+++ gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/sounder.py   
2007-06-04 20:03:11 UTC (rev 5668)
@@ -32,6 +32,7 @@
 bmFR_MODE_LP    = 1 << 3       # bit 3: enable digital loopback
 
 FR_DEGREE = usrp.FR_USER_1
+FR_AMPL = usrp.FR_USER_2
 
 def pick_subdevice(u):
     """
@@ -47,15 +48,18 @@
     return (0, 0)
 
 class sounder_tx:
-    def __init__(self, loopback=False,verbose=False):
+    def __init__(self, loopback=False,ampl=4096,verbose=False,debug=False):
        self._loopback=loopback
+        self._amplitude = ampl
        self._verbose = verbose
+       self._debug = debug
         self._u = usrp.sink_s(fpga_filename='usrp_sounder.rbf')
        if not self._loopback:
             self._subdev_spec = usrp.pick_tx_subdevice(self._u)
             self._subdev = usrp.selected_subdev(self._u, self._subdev_spec)
             if self._verbose:
                 print "Using", self._subdev.name(), "for sounder transmitter." 
           
+        self.set_amplitude(ampl)
         self._u.start()
 
     def tune(self, frequency):
@@ -65,6 +69,12 @@
         if result == False:
             raise RuntimeError("Failed to set transmitter frequency.")
 
+    def set_amplitude(self, ampl):
+       self._amplitude = ampl
+        if self._debug:
+            print "Writing amplitude register with:", hex(self._mode)
+        self._u._write_fpga_reg(FR_AMPL, self._amplitude)
+
 class sounder_rx:
     def 
__init__(self,subdev_spec=None,gain=None,length=1,msgq=None,loopback=False,verbose=False,debug=False):
        self._subdev_spec = subdev_spec
@@ -103,6 +113,9 @@
 
     def set_gain(self, gain):
         self._gain = gain
+       if self._loopback:
+           return
+           
         if self._gain is None:
             # if no gain was specified, use the mid-point in dB
             g = self._subdev.gain_range()
@@ -131,13 +144,14 @@
 
 
 class sounder:
-    def 
__init__(self,transmit=False,receive=False,loopback=False,rx_subdev_spec=None,
+    def 
__init__(self,transmit=False,receive=False,loopback=False,rx_subdev_spec=None,ampl=0x1FFF,
                  
frequency=0.0,rx_gain=None,degree=12,length=1,msgq=None,verbose=False,debug=False):
         self._transmit = transmit
         self._receive = receive
         self._loopback = loopback
         self._rx_subdev_spec = rx_subdev_spec
         self._frequency = frequency
+        self._amplitude = ampl
         self._rx_gain = rx_gain
         self._degree = degree
         self._length = length
@@ -152,7 +166,8 @@
        self._receiving = False
                
        if self._transmit:
-           self._trans = 
sounder_tx(loopback=self._loopback,verbose=self._verbose)
+           self._trans = 
sounder_tx(loopback=self._loopback,ampl=self._amplitude,
+                                     verbose=self._verbose)
             self._u = self._trans._u
             
        if self._receive:

Modified: 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py
===================================================================
--- 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py  
    2007-06-04 19:24:30 UTC (rev 5667)
+++ 
gnuradio/branches/developers/jcorgan/snd/gr-sounder/src/python/usrp_sounder.py  
    2007-06-04 20:03:11 UTC (rev 5668)
@@ -40,6 +40,8 @@
                       help="set frequency to FREQ in Hz, default is %default", 
metavar="FREQ")
     parser.add_option("-d", "--degree", type="int", default=12,
                       help="set sounding sequence degree (2-12), default is 
%default,")
+    parser.add_option("-a", "--amplitude", type="int", default=4096,
+                      help="set waveform amplitude, default is %default,")
     parser.add_option("-t", "--transmit", action="store_true", default=False,
                       help="enable sounding transmitter")
     parser.add_option("-r", "--receive", action="store_true", default=False,
@@ -78,7 +80,7 @@
     msgq = gr.msg_queue()
     s = 
sounder(transmit=options.transmit,receive=options.receive,loopback=options.loopback,
                 
rx_subdev_spec=options.rx_subdev_spec,frequency=options.frequency,rx_gain=options.gain,
-                
degree=options.degree,length=length,msgq=msgq,verbose=options.verbose,
+                
degree=options.degree,length=length,msgq=msgq,verbose=options.verbose,ampl=options.amplitude,
                 debug=options.debug)
     s.start()
 





reply via email to

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