11-28-2012 04:44 AM
11-29-2012 03:25 AM
Hi Grega!
Yes, the NI-8452 can be used both as a slave module, and as a master module. The Slave API is not available only for the 8451. Please check out this document for further information, or ask away in this thread.
Kind regards:
Andrew Valko
National Instruments
11-29-2012 03:34 AM
This applies also for the SPI? I have a ADC that does continuous conversion and is connected to FPGA. This FPGA wants me to have a slave SPI device, that will communicate with it. So the FPGA gives data, clock and busy signal, all as output.
Aren't the SPI bits on NI 8452 for clock, and CS only outputs?
Regards
11-29-2012 07:35 AM - edited 11-29-2012 07:36 AM
Dear Grega!
You are correct, SPI slave function is not supported on the 8452, as it will always provide clock and chip select signals as outputs. There are a few things we can do to solve this, depending on your resources and application.
a. Use the FPGA as a slave module, because that is supported. If you're testing master behavior though, this is not applicable.
b. Oversample the FPGA output. You'll use both devices as masters so they will not be synced, but the SPI needs no ACK from the slave so data transfer still works this way. The redundant data created in this case (since the USB must run faster not to miss anything, so some data will be measured twice) must be somehow programatically removed.
c. Use any DIO module that supports edge detection to act as a slave device.
If I understood correctly, since we're collecting measurement data from the FPGA, no two-way communication is necessary, we just have to read what the master module writes onto the bus. If that is not true (you want the slave to react by responding on the bus) then only a proper SPI slave (another FPGA perhaps) is suitable.
Kind regards:
Andrew Valko
NI
11-29-2012 07:40 AM
Thank you for the information.
Yes, I only need to read data from the FPGA.
So if I use DIO module to detect a busy signal (when the data is ready), I would still need a synchronized clock from FPGA and the SPI module.
Hmm, probably the easiest way is to reprogram the FPGA...
Thanks,
Regards
11-29-2012 09:07 AM
Dear Grega!
Glad I could provide some tips to move forward with your application. It is as you've said: If you want to use a DIO module, you'll have to connect the clock output from the FPGA as an ingoing clock, as well as the busy signal for edge detection.
Best of luck to you and please get back to me if you have any other questions.
Regards:
Andrew Valko
NI
05-08-2013 03:41 AM
Hi!,
I found this post on your forum.
It looks like that now can act as slave. It's correct? And which is the buffer size?
05-14-2013 07:52 AM
Hey,
as I read through the NI-845x 2.1.1 readme file, it says that they added the support for the device being a slave only for I2C. Or am I mistaken?
Best Regards,
Grega
05-15-2013 03:23 AM
06-17-2014 10:34 AM
Hi Ardent!
Is there any update regarding slave mode support in SPI for NI-8452?
I am doing a LabView project that needs to acquire data at 24MHz from touch controller in debugging mode but unfortunately touch controller sends data as spi master.
It needs to be synchronized.
If NI-8452 still does not support SPI slave mode, could you please suggest me any other SPI interface device that can be used easily with labView?