Wiki

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
university:tools:pluto:controlling_the_transceiver_and_transferring_data [28 Apr 2017 15:58] – [Controlling the transceiver] Michael Hennerichuniversity:tools:pluto:controlling_the_transceiver_and_transferring_data [28 Apr 2017 16:29] – [Controlling the transceiver] Michael Hennerich
Line 22: Line 22:
 It shows how to control the AD936x transceiver via a remote connection. It shows how to control the AD936x transceiver via a remote connection.
  
-  - Create IIO IP Network context. Instead of ip:xxx.xxx.xxx.xxx it'll also accept usb:XX.XX.X+  - Create IIO IP Network context. Instead of ''ip:xxx.xxx.xxx.xxx'' it'll also accept ''usb:XX.XX.X''
   - Get the AD936x PHY device structure   - Get the AD936x PHY device structure
-  - Find and write the TX LO frequency +  - Set the TX LO frequency (see [[resources:tools-software:linux-drivers:iio-transceiver:ad9361|AD9361 device driver documentation]])  
-  - Find and write RX baseband rate+  - Set RX baseband rate
    
 +\\
 <code c> <code c>
 +#include <iio.h>
 +
 int main (int argc, char **argv) int main (int argc, char **argv)
 { {
Line 33: Line 36:
  struct iio_device *phy;  struct iio_device *phy;
  
- ctx =  iio_create_context_from_uri("ip:192.168.2.1");+ ctx = iio_create_context_from_uri("ip:192.168.2.1");
  
  phy = iio_context_find_device(ctx, "ad9361-phy");  phy = iio_context_find_device(ctx, "ad9361-phy");
Line 45: Line 48:
  iio_device_find_channel(phy, "voltage0", false),  iio_device_find_channel(phy, "voltage0", false),
  "sampling_frequency",  "sampling_frequency",
- 50000000); /* RX baseband rate 50 MSPS */+ 5000000); /* RX baseband rate MSPS */
  
  receive(ctx);  receive(ctx);
Line 56: Line 59:
  
 ===== Receiving data ===== ===== Receiving data =====
 +
 +  - Get the RX capture device structure
 +  - Get the IQ input channels
 +  - Enable I and Q channel
 +  - Create the RX buffer
 +  - Fill the buffer 
 +  - Process samples
 +
 +\\
  
 <code c> <code c>
university/tools/pluto/controlling_the_transceiver_and_transferring_data.txt · Last modified: 18 Dec 2020 17:55 by Rob Riggs