On Mon, Sep 14, 2009 at 11:02:36AM -0700, E. Ornelas wrote: > > Hello. > I'm trying to use the SPI interface of a BasicRX. > I made a small test program. > It basically keeps on writing. > > There are a few things I need to know: > 1 - is this the right way to use the SPI?
Pretty close. See below. > 2 - is the buffer the hex number passed as a string? It's binary, not hex. > 3 - Even though I don't know what to expect with the buffer I used, I at > least expected to see something in the BasicRX SPI pins, which I don't... I > can see some periodic bursts on the clock pin but nothing on the signal. We never implemented SPI_FMT_LSB; Use SPI_FMT_MSB instead. Try this: from gnuradio import usrp u = usrp.source_c(0) spi_cmd = ''.join([chr(x) for x in [0x55, 0xAA, 0x55, 0xAA]]) while True: r = u._write_spi(0, usrp.SPI_ENABLE_RX_A, usrp.SPI_FMT_HDR_0|usrp.SPI_FMT_MSB, spi_cmd) Look at the SDI (into the d'board), SCLK and SEN pins. Eric > Thanks in advance for any help you can give me. > > The code I'm using is the one below: > > from gnuradio import gr > from gnuradio import window > from gnuradio import usrp, howto > import wx > import time > from gnuradio import audio > > class FlowGraph(gr.top_block): > def __init__(self): > gr.top_block.__init__(self) > > decimation = 256 > center_frequency = 10.7e6 > > self.u = usrp.source_c(0, decimation, fpga_filename="std_2rxhb_2tx.rbf") > self.u.set_nchannels(1) > self.subdev_spec = (0,0) > self.subdev = usrp.selected_subdev(self.u, self.subdev_spec) > self.subdev.set_auto_tr(True) > self.subdev.select_rx_antenna('RX2') > self.u.tune(0, self.subdev, center_frequency) > g = self.subdev.gain_range() > gain = float(g[0]+g[1])/2 > self.subdev.set_gain(gain) > > if __name__ == "__main__": > print "Creating flowgraph..." , > tb = TunerFlowGraph() > print "[DONE]" > > print "Starting flowgraph...", > tb.start() > print "[DONE]" > > while(1): > print "Writing to SPI...", > usrp.sink_s()._write_spi(0, usrp.SPI_ENABLE_RX_A, > usrp.SPI_FMT_HDR_0|usrp.SPI_FMT_LSB, "@") > time.sleep(.030) > print "[DONE]" _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org http://lists.gnu.org/mailman/listinfo/discuss-gnuradio