Changeset 9183
- Timestamp:
- 08/05/08 23:23:48
- Files:
-
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/apps/test.sh (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/apps/test2_usrp2.cc (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2 (modified) (1 prop)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/Makefile.am (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/test_gr_usrp2.cc (added)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_base.cc (modified) (2 diffs)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_base.h (modified) (2 diffs)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_c.cc (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/include/usrp2/usrp2.h (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/lib/usrp2.cc (modified) (1 diff)
- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/lib/usrp2_impl.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/apps/test.sh
r9142 r9183 1 1 #!/bin/sh 2 2 3 sudo ./test _usrp2 -d 43 sudo ./test2_usrp2 -d 4 -v 4 4 5 5 usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/apps/test2_usrp2.cc
r9145 r9183 341 341 342 342 usrp2::usrp2::sptr u2 = usrp2::usrp2::make(interface, mac_addr_str); 343 343 fprintf(stderr, "Using USRP2 at %s\n\n", u2->mac_addr().c_str()); 344 344 345 // FIXME in case it was left running... 345 346 if (!u2->stop_rx_streaming()){ usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2
- Property svn:ignore changed from .libs .deps Makefile Makefile.in *.pyc usrp2.cc usrp2.py to .libs .deps Makefile Makefile.in *.pyc usrp2.cc usrp2.py test_gr_usrp2
usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/Makefile.am
r9182 r9183 18 18 include $(top_srcdir)/Makefile.common 19 19 20 INCLUDES = $(STD_DEFINES_AND_INCLUDES) $(CPPUNIT_INCLUDES)20 AM_CPPFLAGS = $(STD_DEFINES_AND_INCLUDES) 21 21 22 22 lib_LTLIBRARIES = \ 23 23 libgr_usrp2.la 24 24 25 bin_PROGRAMS = \ 26 test_gr_usrp2 27 28 test_gr_usrp2_SOURCES = test_gr_usrp2.cc 29 test_gr_usrp2_LDADD = \ 30 libgr_usrp2.la \ 31 $(top_builddir)/lib/libusrp2ng.la 32 25 33 libgr_usrp2_la_SOURCES = \ 26 usrp2_sink_base.cc \27 usrp2_sink_c.cc \28 34 usrp2_source_base.cc \ 29 35 usrp2_source_c.cc 36 # usrp2_sink_base.cc 37 # usrp2_sink_c.cc 30 38 31 39 libgr_usrp2_la_LIBADD = \ 32 ../lib/libusrp2.la 40 $(top_builddir)/lib/libusrp2ng.la \ 41 $(GNURADIO_CORE_LIBS) 33 42 34 include_HEADERS = \ 35 usrp2_sink_base.h \ 36 usrp2_sink_c.h \ 37 usrp2_source_base.h \ 38 usrp2_source_c.h 43 # These will get installed once this moves into GNU Radio trunk 44 #include_HEADERS = \ 45 # usrp2_sink_base.h \ 46 # usrp2_sink_c.h \ 47 # usrp2_source_base.h \ 48 # usrp2_source_c.h 39 49 40 50 # Export C++ GNU Radio driver to Python via SWIG 41 ourpythondir = $(grpythondir)42 ourlibdir = $(grpyexecdir)51 #ourpythondir = $(grpythondir) 52 #ourlibdir = $(grpyexecdir) 43 53 44 SWIGPYTHONARGS = $(SWIGPYTHONFLAGS) $(SWIGGRFLAGS) $(WITH_SWIG_INCLUDES) \45 $(WITH_INCLUDES)54 #SWIGPYTHONARGS = $(SWIGPYTHONFLAGS) $(SWIGGRFLAGS) $(WITH_SWIG_INCLUDES) \ 55 # $(WITH_INCLUDES) 46 56 47 LOCAL_IFILES = \48 usrp2.i57 #LOCAL_IFILES = \ 58 # usrp2.i 49 59 50 BUILT_SOURCES = \51 usrp2.cc \52 usrp2.py60 #BUILT_SOURCES = \ 61 # usrp2.cc \ 62 # usrp2.py 53 63 54 ourpython_PYTHON = \55 usrp2.py64 #ourpython_PYTHON = \ 65 # usrp2.py 56 66 57 ourlib_LTLIBRARIES = \58 _usrp2.la67 #ourlib_LTLIBRARIES = \ 68 # _usrp2.la 59 69 60 _usrp2_la_SOURCES = \61 usrp2.cc70 #_usrp2_la_SOURCES = \ 71 # usrp2.cc 62 72 63 _usrp2_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version73 #_usrp2_la_LDFLAGS = $(NO_UNDEFINED) -module -avoid-version 64 74 65 _usrp2_la_LIBADD = \66 $(PYTHON_LDFLAGS) \67 libgr_usrp2.la \68 $(GNURADIO_CORE_LIBS) \69 -lstdc++75 #_usrp2_la_LIBADD = \ 76 # $(PYTHON_LDFLAGS) \ 77 # libgr_usrp2.la \ 78 # $(GNURADIO_CORE_LIBS) \ 79 # -lstdc++ 70 80 71 _usrp2_la_CPPFLAGS = $(PYTHON_CPPFLAGS)81 #_usrp2_la_CPPFLAGS = $(PYTHON_CPPFLAGS) 72 82 73 usrp2.cc usrp2.py: $(LOCAL_IFILES)74 $(SWIG) $(SWIGPYTHONARGS) -module usrp2 -o usrp2.cc $(LOCAL_IFILES)83 #usrp2.cc usrp2.py: $(LOCAL_IFILES) 84 # $(SWIG) $(SWIGPYTHONARGS) -module usrp2 -o usrp2.cc $(LOCAL_IFILES) 75 85 76 swiginclude_HEADERS = \77 $(LOCAL_IFILES)86 #swiginclude_HEADERS = \ 87 # $(LOCAL_IFILES) 78 88 79 89 # Don't distribute output of swig 80 dist-hook:81 @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done82 @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done90 #dist-hook: 91 # @for file in $(BUILT_SOURCES); do echo $(RM) $(distdir)/$$file; done 92 # @for file in $(BUILT_SOURCES); do $(RM) $(distdir)/$$file; done 83 93 84 94 MOSTLYCLEANFILES += $(BUILT_SOURCES) *.pyc *~ usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_base.cc
r8861 r9183 29 29 #include <iostream> 30 30 31 #define USRP2_SOURCE_BASE_DEBUG 131 #define USRP2_SOURCE_BASE_DEBUG 0 32 32 33 33 usrp2_source_base::usrp2_source_base(const std::string &name, 34 34 gr_io_signature_sptr output_signature, 35 const std::string &i fc,35 const std::string &interface, 36 36 const std::string &mac) 37 37 throw (std::runtime_error) … … 39 39 gr_make_io_signature(0, 0, 0), 40 40 output_signature), 41 d_u2( 0), d_addr()41 d_u2(usrp2::usrp2::sptr()) 42 42 { 43 std::vector<op_id_reply_t> r = usrp2_basic::find_usrps(ifc); 44 if (r.size() == 0) 45 throw std::runtime_error("No USRP2s found on interface."); 46 47 if (mac == "") { 48 if (r.size() > 1) 49 throw std::runtime_error("Must supply USRP2 MAC address when multiple devices are present"); 50 d_addr = r[0].addr; 51 } 52 else { 53 u2_mac_addr_t addr; 54 if (!usrp2_basic::parse_mac_addr(mac, &addr)) 55 throw std::runtime_error("Invalid MAC address"); 56 57 unsigned int i; 58 for (i = 0; i < r.size(); i++) 59 if (r[i].addr == addr) { 60 d_addr = addr; 61 break; 62 } 63 64 if (i == r.size()) 65 throw std::runtime_error("Unable to find specified USRP2."); 66 } 67 68 if (USRP2_SOURCE_BASE_DEBUG) 69 std::cout << "usrp2_source_base: using ifc=" << ifc << " mac=" << d_addr << std::endl; 70 71 // Now retrieve or make and return usrp2_basic object for MAC address in d_addr 43 d_u2 = usrp2::usrp2::make(interface, mac); 44 if (!d_u2) 45 throw std::runtime_error("Unable to initialize USRP2!"); 72 46 } 73 47 74 48 usrp2_source_base::~usrp2_source_base () 75 49 { 76 if (d_u2)77 delete d_u2;78 50 } 79 51 usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_base.h
r8861 r9183 25 25 26 26 #include <gr_sync_block.h> 27 #include <usrp2 _basic.h>27 #include <usrp2/usrp2.h> 28 28 #include <stdexcept> 29 29 … … 37 37 throw (std::runtime_error); 38 38 39 usrp2_basic *d_u2; 40 u2_mac_addr_t d_addr; 39 usrp2::usrp2::sptr d_u2; 41 40 42 41 public: 43 42 ~usrp2_source_base(); 43 44 const std::string &mac_addr() const { return d_u2->mac_addr(); } 44 45 45 46 int work(int noutput_items, usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/gr-usrp2/usrp2_source_c.cc
r8861 r9183 29 29 30 30 usrp2_source_c_sptr 31 usrp2_make_source_c(const std::string &i fc,32 const std::string &mac )31 usrp2_make_source_c(const std::string &interface, 32 const std::string &mac_addr) 33 33 throw (std::runtime_error) 34 34 { 35 return usrp2_source_c_sptr(new usrp2_source_c(i fc, mac));35 return usrp2_source_c_sptr(new usrp2_source_c(interface, mac_addr)); 36 36 } 37 37 38 usrp2_source_c::usrp2_source_c(const std::string &i fc,39 const std::string &mac )38 usrp2_source_c::usrp2_source_c(const std::string &interface, 39 const std::string &mac_addr) 40 40 throw (std::runtime_error) 41 41 : usrp2_source_base("usrp2_source_c", 42 42 gr_make_io_signature(1, 1, sizeof(gr_complex)), 43 i fc, mac)43 interface, mac_addr) 44 44 { 45 45 } usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/include/usrp2/usrp2.h
r9142 r9183 84 84 ~usrp2(); 85 85 86 /*! 87 * Returns the MAC address associated with this USRP 88 */ 89 const std::string &mac_addr(); 90 86 91 /* 87 92 * ---------------------------------------------------------------- usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/lib/usrp2.cc
r9142 r9183 46 46 } 47 47 48 const std::string & 49 usrp2::mac_addr() 50 { 51 return d_impl->mac_addr(); 52 } 53 48 54 // Receive 49 55 usrp2/branches/developers/jcorgan/gr-usrp2/host-ng/lib/usrp2_impl.h
r9142 r9183 44 44 eth_buffer *d_eth_buf; 45 45 pktfilter *d_pf; 46 std::string d_addr; 46 std::string d_addr; // FIXME: use u2_mac_addr_t instead 47 47 usrp2_thread *d_bg_thread; 48 48 volatile bool d_bg_running; // TODO: multistate if needed … … 95 95 void bg_loop(); 96 96 97 const std::string &mac_addr() const { return d_addr; } // FIXME: convert from u2_mac_addr_t 97 98 bool set_rx_gain(double gain); 98 99 bool set_rx_center_freq(double frequency, tune_result *result);
