LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Can you use the SPI/I2C Driver with a USBX 6363?

Can you use the SPI/I2C Driver with a USBX 6363? The description makes it sound like you need an exterior FPGA, or a different kind of DAQ. Please advise. Thank you!

Also, I am a new user to LabVIEW, so please include a lot of detail if you can!

0 Kudos
Message 1 of 6
(3,854 Views)

As far as I know, the NI SPI/I2C drivers only work with the USB-8451.


GCentral
There are only two ways to tell somebody thanks: Kudos and Marked Solutions
Unofficial Forum Rules and Guidelines
"Not that we are sufficient in ourselves to claim anything as coming from us, but our sufficiency is from God" - 2 Corinthians 3:5
0 Kudos
Message 2 of 6
(3,840 Views)

Thanks for the info. Do you or does anyone know if the USB6363 can be set up in some way to communicate with I2C slaves?

0 Kudos
Message 3 of 6
(3,831 Views)

The 6363 is basically just a DAQ device. If you intend to use it to communicate with an I2C device then you need to implement the I2C protocol yourself using bit-banging. The I2C spec is available from the Philips web site. And before you ask, I am not aware of any examples. It may be cheaper for you to get the 8451 or a third-party device such as the Sub-20.

0 Kudos
Message 4 of 6
(3,823 Views)

I'm not sure if this is similar to smercurio_fc's point, but you can mimic I2C communication by directly driving high and low voltage signals from your DAQ device to the slave device on the bus. Since I2C relies on the communication lines to remain in high impedance, we wouldn't be performing proper I2C and slave devices wouldn't be able to perform proper clock stretching.

 

I can confirm this kind of interaction works I did it a couple of months ago, and I actually managed to communicate with a slave pretty quickly. My only concern is that you have to be mindful of the current limitations of your slave device in case we do try to output a full 5V from the DAQ Device over SDA/SCL when the slave is trying to generate a 0V signal. The USB-6363 can output up to 24mA on a single DIO line in worst case scenarios, so you should check to see whether you need to use some kind of current limitation circuitry to prevent this kind of situation from occurring.

 

Ideally, it'd be best to see if there is a High Impedance Mode for the USB-6363.


Alex Thomas, University of Manchester School of EEE LabVIEW Ambassador (CLAD)

0 Kudos
Message 5 of 6
(3,810 Views)

You might find this useful!

 

You can quickly check your interaction with slave devices through the use of this VI I created, called the I2C Wizard. To implement Pseudo-I2C (Driving +5V instead of High Impedance), you'll need to iterate through the produced waveform data and replace 'High-Z's with '1's.

 

The code isn't quite finished, but the way I used it is generate your instruction data and then copy the data on the waveform graph. You can then paste this data into your test VIs as a constant.


Alex Thomas, University of Manchester School of EEE LabVIEW Ambassador (CLAD)

0 Kudos
Message 6 of 6
(3,807 Views)