[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Commit-gnuradio] r6655 - in gnuradio/branches/features/inband-usb/usrp/
From: |
gnychis |
Subject: |
[Commit-gnuradio] r6655 - in gnuradio/branches/features/inband-usb/usrp/host: apps-inband lib/inband |
Date: |
Thu, 18 Oct 2007 13:27:49 -0600 (MDT) |
Author: gnychis
Date: 2007-10-18 13:27:48 -0600 (Thu, 18 Oct 2007)
New Revision: 6655
Modified:
gnuradio/branches/features/inband-usb/usrp/host/apps-inband/test_usrp_inband_rx.cc
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.cc
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.h
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_usb_interface.cc
Log:
Merging in -r6650:6654 from developers/gnychis/inband
Modified:
gnuradio/branches/features/inband-usb/usrp/host/apps-inband/test_usrp_inband_rx.cc
===================================================================
---
gnuradio/branches/features/inband-usb/usrp/host/apps-inband/test_usrp_inband_rx.cc
2007-10-18 19:25:52 UTC (rev 6654)
+++
gnuradio/branches/features/inband-usb/usrp/host/apps-inband/test_usrp_inband_rx.cc
2007-10-18 19:27:48 UTC (rev 6655)
@@ -91,12 +91,19 @@
d_samples_recvd(0),
d_samples_to_recv(20e6)
{
-
d_rx = define_port("rx0", "usrp-rx", false, mb_port::INTERNAL);
d_cs = define_port("cs", "usrp-server-cs", false, mb_port::INTERNAL);
// Pass a dictionary to usrp_server which specifies which interface to use,
the stub or USRP
pmt_t usrp_dict = pmt_make_dict();
+
+ // To test the application without a USRP
+ bool fake_usrp_p = true;
+ if(fake_usrp_p) {
+ pmt_dict_set(usrp_dict,
+ pmt_intern("fake-usrp"),
+ PMT_T);
+ }
// Specify the RBF to use
pmt_dict_set(usrp_dict,
Modified:
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.cc
===================================================================
--- gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.cc
2007-10-18 19:25:52 UTC (rev 6654)
+++ gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.cc
2007-10-18 19:27:48 UTC (rev 6655)
@@ -40,7 +40,7 @@
typedef usrp_inband_usb_packet transport_pkt;
-static const bool verbose = false;
+static const bool verbose = true;
bool usrp_rx_stop_stub;
@@ -51,15 +51,32 @@
usrp_rx_stub::usrp_rx_stub(mb_runtime *rt, const std::string &instance_name,
pmt_t user_arg)
: mb_mblock(rt, instance_name, user_arg),
d_samples_per_frame((long)(126)),
+ d_decim_rx(128),
d_amplitude(16384),
d_disk_write(false)
{
+
+ // Information about the rates are passed all the way from the app in the
form
+ // of a dictionary. We use this to read the RX decimation rate and compute
+ // the approximate number of MS/s as a form of flow control for the stub.
+ pmt_t usrp_dict = user_arg;
+
+ if (pmt_is_dict(usrp_dict)) {
+ // Read the RX decimation rate
+ if(pmt_t decim_rx = pmt_dict_ref(usrp_dict,
+ pmt_intern("decim-rx"),
+ PMT_NIL)) {
+ if(!pmt_eqv(decim_rx, PMT_NIL))
+ d_decim_rx = pmt_to_long(decim_rx);
+ }
+ }
+
d_cs = define_port("cs", "usrp-rx-cs", true, mb_port::EXTERNAL);
// initialize NCO
double freq = 100e3;
int interp = 32; // 32 -> 4MS/s
- double sample_rate = 128e6 / interp;
+ double sample_rate = 64e6 / interp;
d_nco.set_freq(2*M_PI * freq/sample_rate);
//d_disk_write = true;
@@ -94,7 +111,8 @@
if(pmt_eq(port_id, d_cs->port_symbol())) {
if(verbose)
- std::cout << "[USRP_RX_STUB] Starting...\n";
+ std::cout << "[USRP_RX_STUB] Starting with decim @ "
+ << d_decim_rx << std::endl;
if(pmt_eqv(event, s_cmd_usrp_rx_start_reading))
read_and_respond(data);
Modified:
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.h
===================================================================
--- gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.h
2007-10-18 19:25:52 UTC (rev 6654)
+++ gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_rx_stub.h
2007-10-18 19:27:48 UTC (rev 6655)
@@ -45,6 +45,7 @@
usrp_standard_rx* d_urx;
long d_samples_per_frame;
+ long d_decim_rx;
// for generating sine wave output
ui_nco<float,float> d_nco;
Modified:
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_usb_interface.cc
===================================================================
---
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_usb_interface.cc
2007-10-18 19:25:52 UTC (rev 6654)
+++
gnuradio/branches/features/inband-usb/usrp/host/lib/inband/usrp_usb_interface.cc
2007-10-18 19:27:48 UTC (rev 6655)
@@ -87,7 +87,7 @@
d_interp_tx = pmt_to_long(interp_tx);
}
- // Read the RX interpolations
+ // Read the RX decimation rate
if(pmt_t decim_rx = pmt_dict_ref(usrp_dict,
pmt_intern("decim-rx"),
PMT_NIL)) {
@@ -135,8 +135,8 @@
d_tx_cs = define_port("tx_cs", "usrp-tx-cs", false, mb_port::INTERNAL);
// Connect to TX and RX
- define_component("tx", tx_interface, PMT_F);
- define_component("rx", rx_interface, PMT_F);
+ define_component("tx", tx_interface, usrp_dict);
+ define_component("rx", rx_interface, usrp_dict);
connect("self", "rx_cs", "rx", "cs");
connect("self", "tx_cs", "tx", "cs");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Commit-gnuradio] r6655 - in gnuradio/branches/features/inband-usb/usrp/host: apps-inband lib/inband,
gnychis <=