Examine the following waveforms can
assist in troubleshooting. Refer to the I/O diagrams in the design description.
- The CLB generated SPI clock. This is brought out on a test pin for
observation.
- The response from the encoder at the SPI input pin.
- The response from the encoder (SL+/SL-) between the RS485 line driver and the
encoder. Note: The data is a differential signal. Therefore, observation
requires a special probe.
- The TxEN signal. Confirm this
singal remains low. BiSS-C design does not pull TxEN high.
- The encoder clock (MA+/MA-) between the RS485 line driver and the encoder. Note:
The data is a differential signal. Therefore, observation requires a special
probe.
- If the MA signal is not transmitted:
- Determine if the issue is before, or after, the RS485 line drivers.
- Confirm that TxEN is held
low if the issue is between the line drivers and the encoder.
- If the MA frequency is not as expected:
- Check the BISSC_MA_CLOCK definition and BISSC_FREQ_DIVIDER definition in
bissc.h
- If the encoder response is not seen:
- Check the power
connections to the encoder.
- Check the power supply current against the encoder specifications.
- Reduce the frequency of MA and try again. This can indicate a cable, or
connector, issue.
- Confirm that the cable design, and length, meets the requirements of the
encoder manufacture.
- Determine if the issue is before or after the RS485 line drivers.
- If the response waveform is
observed, but not captured by the SPI:
- This can occur if the
CLB design was moved to a different tile or ported to a different
device.
- Check the SPI
clock from the CLB. This clock is started when the CLB sees the
response from the encoder. Confirm the internal XBAR connections
properly route the response to both the SPI and the appropriate
CLB input.
- If the SPI clock
is seen, confirm that the internal connection from the CLB
output goes to the SPI instance used. This changes depending on
the CLB tile used.