This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
I am planning to use the QSSI on the TivaC to connect a multi-channel ADC.
I need some help understanding Relationship between the frame sync and the data in receive mode.
What happens if the frame is longer than the data size? I checked here but wasn't clear to me.
Ideally I would have 4 bit wide data that is 64 bits long (256 bits per frame),
That would produce 32 bytes DMA’d direct to pin-pong ram.
Any app notes?
I have two Tiva dev boards so are going to try some things so any examples that would help me get started with evaluating this would be much appreciated :)
For the SSI you initiate reads by writing to the transmit FIFO. In Quad SSI mode, you write the upper 4 bits of the 16 bit transmit FIFO (bits 15:12) with three bits indicating the mode and one bit for the end of frame indicator. To read 32 bytes in quad mode you would write (or have the uDMA write) 31 times the value 0x40xx and then write one time the value 0x50xx (the xx, lower 8 bits are don't care). The FSS signal goes low at the start of the first transmission and then goes high after the end of the last transmission.
This answer deals with writes (transmit data from the TIVA) where the TIVA is a bus master.
My questions was about reads, when the TIVA is a slave device, the clock and frame are supplied externally in QSSI mode.
In our application the TIVA never sends data.
All recieved data goes into DMA
Regards,
Jason Morgan
Sentec.
The master is an ADC, e.g. the AD7779 (I'm sure that was mentioned in the first post, but forgive me if it was not)
The ADC output a clock and frame.
If the TIVA can't be an SPI slave then we have a problem......
May have to consider a different CPU!
Hi Jason,
I looked at the Analog Devices datasheet for the AD779. I assume you want to use the "data output" interface as a master quad SPI. The TM4C1294 can capture the data, the issue is synchronization. The DRDY- signal does not act as a CS- signal. What is not clear to me is if the DCLK is free running, or only active when there is data to shift out. The timing diagram for the reset and synchronization signals does not show the DCLK signal. (Maybe it is not active for that first DRDY- pulse.)
The QSSI on the TM4C does not need the FSS signal. If the DCLK from the ADC only toggles when there is data to output (not free running), then you can start the QSSI on the TM4C as a slave and then send the SYNC_IN signal to the ADC to start the process. However, this statement on page 57 of the AD779 datasheet makes me think DCLK is free running.
Sorry, to give you a better answer requires a knowledge of a competitor's part that I do not have.