discuss-gnuradio
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Discuss-gnuradio] Using SPI on BasicRX


From: E. Ornelas
Subject: Re: [Discuss-gnuradio] Using SPI on BasicRX
Date: Tue, 15 Sep 2009 09:06:58 -0700 (PDT)

Thanks for the help.

I have another question:
I noticed that the transfer is done 8-bit at a time.
I need to write a 24-bit word into a ADF4153 Frequency Synthesizer.
Is it possible to transfer 24-bit in a single burst?

Again, thank you for your time.


Eric Blossom wrote:
> 
> 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
> address@hidden
> http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Using-SPI-on-BasicRX-tp25440578p25456853.html
Sent from the GnuRadio mailing list archive at Nabble.com.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]