multi_usrp has many APIs, not all apply for all devices.
enumerate_registers() is from USRP2-era.
I'm curious -- have you already done the FPGA work, or is this where
you're starting?
In general, registers are exposed via the RFNoC XML file (e.g.,
radio_x300.xml).
-- M
On 09/12/2017 02:04 PM, Taliver Heath via USRP-users wrote:
> And following up on this -- how do you enumerate the names of the
> registers? They seem to be present in the code, but
> "enumerate_registers" doens't do anything:
>
> void ListAllRegisters(uhd::usrp::multi_usrp::sptr usrp) {
> auto list = usrp->enumerate_registers();
> cout << "Register List (" << list.size() << "):\n";
> for (auto register_name : usrp->enumerate_registers()) {
> cout << register_name
> << " (field 0 value): " << usrp->read_register(register_name, 0)
> << "\n";
> }
> }
>
>
> ...
> [INFO] [RFNOC] pass (Throughput: 1304.5MB/s)
> [INFO] [RFNOC RADIO] Register loopback test passed
> [INFO] [RFNOC RADIO] Register loopback test passed
> [INFO] [RFNOC RADIO] Register loopback test passed
> [INFO] [RFNOC RADIO] Register loopback test passed
> [INFO] [CORES] Performing timer loopback test...
> [INFO] [CORES] Timer loopback test passed
> [INFO] [CORES] Performing timer loopback test...
> [INFO] [CORES] Timer loopback test passed
> Register List (0):
>
>
> On Tue, Sep 12, 2017 at 12:18 PM, Sugandha Gupta via USRP-users
> <[email protected] <mailto:[email protected]>> wrote:
>
> Hi Karan
>
> Take a look at the block_ctrl files
> here: https://github.com/EttusResearch/uhd/tree/maint/host/lib/rfnoc/
> <https://github.com/EttusResearch/uhd/tree/maint/host/lib/rfnoc/>.
> E.g. the ddc_block_ctrl_impl.cpp
> Use sr_write() to write to user implemented registers in the FPGA.
>
> Hope this helps.
>
>
> On Thu, Aug 31, 2017 at 3:28 PM, Karan Suri via USRP-users
> <[email protected] <mailto:[email protected]>> wrote:
>
> Hello Users
> I recently stumbled onto a problem. I need to implement a gain
> control mechanism by left shifting bits of the received data,
> when the rx power is considerably low. I need to define a
> settings register which controls the shift amount, but I need
> to get access to this setting register using the C++ code.
> I am using the latest stable version of uhd and it seems that
> there is no proper documentation of the settings register for
> the X310.
> It barely talks about the peek and poke commands found in
> user_settings_core_3000.hpp. But i cant find any example which
> relates to this nor how to use it. Any help will be extremely
> appreciated.
> Thanks a ton
> Karan Suri
> University Of Michigan
> EECS - Masters
>
> _______________________________________________
> USRP-users mailing list
> [email protected] <mailto:[email protected]>
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
> <http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com>
>
>
>
>
> --
> Sugandha Gupta
> Staff Software Engineer
> Ettus Research
>
> _______________________________________________
> USRP-users mailing list
> [email protected] <mailto:[email protected]>
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
> <http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com>
>
>
>
>
> _______________________________________________
> USRP-users mailing list
> [email protected]
> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
>
_______________________________________________
USRP-users mailing list
[email protected]
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com