UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor auriga90
Visitor
864 Views
Registered: ‎07-23-2018

Zynq Ultrascale+ SPI 3-wire with hard IP

Hi,

 

i'm working with the zynq ultrascale+ MPSoC with the linux cadence spi driver.

 

I'm having problems with the 3 wire configuration of the SPI. I'm using the EMIO - pins as CS, SCLK, MOSI/MISO.

For 3 wire mode i need a type signal, so that my devices knows whether my MOSI/MISO - pin is an input or an output.

The problem is, that none of my signals can achieve that (see picture).

In the picture you can see the signals i get when running spi_write_then_read.

The first 16 bits are adress-bits with the read/write bit in front, the last 8 bits are the data bits i want to read.

CS is pin spi0_ss_o_n.

 

The type bit should be low during the writing process (first 16 bits) and high during reading (last 8 bits).

 

I know that there is no problem with connected device (which is a lmk04828).

 

I hope someone can help me with my problem.

 

best regards

SPI_read.png
SPI_Block_design.png