Can you please tell us how to properly implement data reception from usrp
n210 using STREAM_MODE_NUM_SAMPS_AND_MORE:

import numpy as np
import libpyuhd
import pyqtgraph as pg
import time
from PyQt4 import QtGui,QtCore
app = QtGui.QApplication([])
win=pg.GraphicsWindow()
label = pg.LabelItem(justify='right')
win.addItem(label)
p1 = win.addPlot(row=1, col=0)
p2=p1.plot()
global p2
vb = p1.vb
rezult=np.empty(4096,dtype=np.complex64)
usrp1=libpyuhd.usrp.multi_usrp("addr=192.168.10.2")
chanels=0
usrp1.set_rx_rate(40e6,0)
usrp1.set_rx_gain(38,0)
usrp1.set_rx_freq(libpyuhd.types.tune_request(400e6),0)
st_args=libpyuhd.usrp.stream_args("fc32","sc8")
st_args.chanels=chanels
metadata=libpyuhd.types.rx_metadata()
streamer=usrp1.get_rx_stream(st_args)
stream_cmd = libpyuhd.types.stream_cmd(libpyuhd.types.stream_mode.num_more)
#stream_cmd=libpyuhd.types.stream_cmd.time_spec(0.1)
streamer.issue_stream_cmd(stream_cmd)
stream_cmd.num_samps=4096
stream_cmd.stream_now=False
#np.set_printoptions(threshold='nan')
buffer_samps=streamer.get_max_num_samps()
#print(buffer_samps)
recv_buff = np.zeros(4096, dtype=np.complex64)
#print (recv_buff.shape)
recv_samps=0
start=time.time()
def update():
    global recv_samps
    while True:
        streamer.recv(recv_buff, metadata)
        b=recv_buff[:]
        p2.setData(abs(np.fft.fft(b)),pen="r")
        #timer.timeout(5)
timer = QtCore.QTimer()
timer.timeout.connect(update)
timer.start(20)
    #recv_buff = np.zeros(4096, dtype=np.complex64)
if __name__ == '__main__':
    import sys
    if (sys.flags.interactive != 1) or not hasattr(QtCore, 'PYQT_VERSION'):
        QtGui.QApplication.instance().exec_()
_______________________________________________
USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Reply via email to