I am implementing the SPI read/write engine using the digital IO of NI PXIe-7858R. The LabVIEW FPGA state machine-based algorithm seems to be functioning correctly in the FPGA simulation mode. However, if I test it with external hardware (e.g., Arduino), the SPI engine does not function correctly. After probing the sampled digital inputs using the available debugging tools, I figured out that the behavior is because of unexpected values on the digital input pin.
The FPGA digital input lines are sensitive to the voltage levels. Any higher level above the maximum voltage specification of the pin will result in similar unexpected behavior. The Arduino digital output provides 5V, which is higher than the maximum input voltage (3.3V) of the digital input pin of PXIe-7858. Such use of hardware can also damage the IO pins.
Collaborate with other users in our discussion forums
A valid service agreement may be required, and support options vary by country.