18 #ifndef INCLUDED_UHD_USRP_DBOARD_IFACE_HPP 19 #define INCLUDED_UHD_USRP_DBOARD_IFACE_HPP 27 #include <boost/shared_ptr.hpp> 28 #include <boost/cstdint.hpp> 29 #include <boost/thread/thread.hpp> 33 namespace uhd{
namespace usrp{
64 typedef boost::shared_ptr<dboard_iface>
sptr;
98 virtual special_props_t get_special_props(
void) = 0;
107 virtual void write_aux_dac(
unit_t unit,
aux_dac_t which_dac,
double value) = 0;
125 virtual void set_pin_ctrl(
126 unit_t unit, boost::uint32_t value, boost::uint32_t
mask = 0xffff
135 virtual boost::uint32_t get_pin_ctrl(
unit_t unit) = 0;
145 virtual void set_atr_reg(
146 unit_t unit, atr_reg_t reg, boost::uint32_t value, boost::uint32_t
mask = 0xffff
156 virtual boost::uint32_t get_atr_reg(
unit_t unit, atr_reg_t reg) = 0;
165 virtual void set_gpio_ddr(
166 unit_t unit, boost::uint32_t value, boost::uint32_t
mask = 0xffff
175 virtual boost::uint32_t get_gpio_ddr(
unit_t unit) = 0;
184 virtual void set_gpio_out(
185 unit_t unit, boost::uint32_t value, boost::uint32_t
mask = 0xffff
194 virtual boost::uint32_t get_gpio_out(
unit_t unit) = 0;
202 virtual boost::uint32_t read_gpio(
unit_t unit) = 0;
212 virtual void write_spi(
215 boost::uint32_t data,
228 virtual boost::uint32_t read_write_spi(
231 boost::uint32_t data,
241 virtual void set_clock_rate(
unit_t unit,
double rate) = 0;
249 virtual double get_clock_rate(
unit_t unit) = 0;
257 virtual std::vector<double> get_clock_rates(
unit_t unit) = 0;
265 virtual void set_clock_enabled(
unit_t unit,
bool enb) = 0;
274 virtual double get_codec_rate(
unit_t unit) = 0;
283 virtual void set_fe_connection(
285 const std::string& fe_name,
305 virtual void sleep(
const boost::chrono::nanoseconds& time);
virtual ~dboard_iface(void)
Definition: dboard_iface.hpp:90
aux_adc_t
aux adc selection enums (per unit)
Definition: dboard_iface.hpp:83
Definition: serial.hpp:45
uhd::usrp::gpio_atr::gpio_atr_reg_t atr_reg_t
Definition: dboard_iface.hpp:88
Definition: time_spec.hpp:39
aux_dac_t
aux dac selection enums (per unit)
Definition: dboard_iface.hpp:75
Definition: build_info.hpp:25
Definition: dboard_iface.hpp:62
bool soft_clock_divider
Definition: dboard_iface.hpp:43
Definition: serial.hpp:105
Definition: fe_connection.hpp:27
gpio_atr_reg_t
Definition: gpio_defs.hpp:28
#define UHD_API
Definition: config.h:73
UHD_INLINE data_t mask(const soft_reg_field_t field)
Definition: soft_register.hpp:98
boost::shared_ptr< dboard_iface > sptr
Definition: dboard_iface.hpp:64
dboard_iface_special_props_t special_props_t
Definition: dboard_iface.hpp:65
Special properties that differentiate this daughterboard slot.
Definition: dboard_iface.hpp:36
unit_t
tells the host which unit to use
Definition: dboard_iface.hpp:68
bool mangle_i2c_addrs
Definition: dboard_iface.hpp:53