USRP Class
This document details the current USRP base class, and as we proceed will
contain details on the new USRP base class with support for in-band signaling.
The current USRP base class is found in
[source:/gnuradio/trunk/usrp/host/lib/usrp_basic.cc usrp_basic.cc] as
usrp_basic . More information about the class can be found in the usrp_basic doxygen
documentation. The inheritance diagram for the usrp_basic class
is as follows:
http://gnuradio.org/doc/doxygen/classusrp+basic+inherit+graph.png
Some functionality that the base class gives access to are the FPGA
registers, AD9862 registers, I2C peripheral, DAC/ADC, and the EEPROMs for
the motherboard and daughterboards.
Initialization of usrp_basic 1. Load the USRP firmware with usrp_load_firmware_nth()
1. Load the FPGA bitstream with usrp_load_fpga()
1. Initialize the common RX and TX AD9862 registers
Initialization of
usrp_standard_rx 1. Set the format of the RX data via the control register (FR_RX_FORMAT)
1. Set the number of channels (FR_TX_MUX)
1. Set the decimal rate between 4 and 256 (FR_DECIM_RATE)
1. Set the mux (FR_RX_MUX)
1. Set the FPGA mode (FR_MODE)
1. For each channel, initialize the RX frequencies and the DDC phases to 0 (FR_RX_FREQ_* FR_RX_PHASE_*)
Initialization of
usrp_standard_tx 1. Initialize AD9862 TX registers
1. Set the number of channels (FR_TX_MUX)
1. Set transmission interpolation rate from 4 to 512, a multiple of 4 (FP_INTERP_RATE)
1. Set the mux (FR_TX_MUX)
1. For each channel, initialize the TX frequency to 0 (FR_TX_FREQ_*)
注: USRP Class (原文出处,翻译整理仅供参考!) |