commit-gnuradio
[Top][All Lists]
Advanced

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

[Commit-gnuradio] r3855 - in gnuradio/branches/developers/jcorgan/cppwra


From: jcorgan
Subject: [Commit-gnuradio] r3855 - in gnuradio/branches/developers/jcorgan/cppwrap: gnuradio-core/src/lib/runtime gnuradio-examples/c++/usrp_wfm_rcv
Date: Wed, 25 Oct 2006 10:35:42 -0600 (MDT)

Author: jcorgan
Date: 2006-10-25 10:35:42 -0600 (Wed, 25 Oct 2006)
New Revision: 3855

Modified:
   
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-core/src/lib/runtime/gr_basic_flowgraph.cc
   
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-examples/c++/usrp_wfm_rcv/usrp_wfm_rcv.cc
Log:
Work in progress, incomplete

Modified: 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-core/src/lib/runtime/gr_basic_flowgraph.cc
===================================================================
--- 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-core/src/lib/runtime/gr_basic_flowgraph.cc
    2006-10-25 01:27:16 UTC (rev 3854)
+++ 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-core/src/lib/runtime/gr_basic_flowgraph.cc
    2006-10-25 16:35:42 UTC (rev 3855)
@@ -215,14 +215,18 @@
     for(block_iter = d_blocks.begin(); block_iter != d_blocks.end(); 
block_iter++) {
        vector<int> used_inputs = calc_used_ports(*block_iter, false);
        vector<int> used_outputs = calc_used_ports(*block_iter, true);
+       int ninputs = used_inputs.size();
+       int noutputs = used_outputs.size();
+       
+#if GR_FLOWGRAPH_DEBUG
+       cout << "Checking correctness for " << (*block_iter) 
+            << " with " << ninputs << " inputs and " << noutputs << " 
outputs." << endl;
+#endif
 
        // Blocks must have inputs sequentially assigned with no gaps
        check_contiguity(*block_iter, (*block_iter)->input_signature(), 
used_inputs);
        check_contiguity(*block_iter, (*block_iter)->output_signature(), 
used_outputs);
        
-       int ninputs = used_inputs.size();
-       int noutputs = used_outputs.size();
-       
        // Ask blocks if their input/ouput connectivity makes sense
        if (!(*block_iter)->check_topology(ninputs, noutputs))
            throw invalid_argument("gr_basic_flowgraph::connect_blocks: 
topology check failed");
@@ -336,7 +340,12 @@
        if (min_s == 0)
            return;
        else
-           throw invalid_argument("gr_basic_flowgraph::check_contiguity: too 
many inputs");
+       {
+#if GR_FLOWGRAPH_DEBUG
+           cout << "Used ports = " << l << ", min_streams = " << min_s << endl;
+#endif
+           throw invalid_argument("gr_basic_flowgraph::check_contiguity: 
insufficient connections");
+       }
     }
 
     if (used_ports[l-1]+1 < min_s)

Modified: 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-examples/c++/usrp_wfm_rcv/usrp_wfm_rcv.cc
===================================================================
--- 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-examples/c++/usrp_wfm_rcv/usrp_wfm_rcv.cc
     2006-10-25 01:27:16 UTC (rev 3854)
+++ 
gnuradio/branches/developers/jcorgan/cppwrap/gnuradio-examples/c++/usrp_wfm_rcv/usrp_wfm_rcv.cc
     2006-10-25 16:35:42 UTC (rev 3855)
@@ -20,34 +20,47 @@
  */
 
 #include <usrp1_source_c.h>
+#include <gr_quadrature_demod_cf.h>
+#include <gr_null_sink.h>
 #include <audio_alsa_sink.h>
 #include <gr_flow_graph.h>
 
-#define RX_BOARD   0
-#define USRP_DECIM 250
-#define USRP_NCHAN 1
-#define USRP_MUX   0x32103210
+#define RX_BOARD               0
+#define USRP_DECIM             200
+#define USRP_NCHAN             1
+#define USRP_MUX               0x32103210
+#define USRP_FPGA_FILENAME     "std_2rxhb_2tx.rbf"
+#define USRP_FIRMWARE_FILENAME "std.ihx"
 
 int main()
 {
-    usrp1_source_c_sptr src;
-    audio_alsa_sink_sptr sink;
-    gr_flow_graph_sptr fg;
+    usrp1_source_c_sptr         src;
+    gr_quadrature_demod_cf_sptr quad;
+    gr_block_sptr              null;
+    audio_alsa_sink_sptr        sink;
+    gr_flow_graph_sptr          fg;
     
     src = usrp1_make_source_c(RX_BOARD,
                              USRP_DECIM,
                              USRP_NCHAN,
                              USRP_MUX,
-                             0,                // mode
-                             0,                // fusb_block_size
-                             0,                // fusb_nblocks
-                             "",               // fpga_filename
-                             "");              // firmware_filename
+                             0, // mode
+                             0, // fusb_block_size
+                             0, // fusb_nblocks
+                             USRP_FPGA_FILENAME,
+                             USRP_FIRMWARE_FILENAME);
                              
+    const float max_dev = 75000.0;
+    const float demod_gain = 2*M_PI*max_dev;
+    quad = gr_make_quadrature_demod_cf(demod_gain);
+    
+    null = gr_make_null_sink(sizeof(gr_complex));
     sink = audio_alsa_make_sink(48000);
     
     fg = gr_make_flow_graph();
 
+    fg->connect(src, 0, quad, 0);
+    fg->connect(quad, 0, sink, 0);
     fg->run();
     
     return 0;





reply via email to

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