2015-03-09 12:41 AM
Hi,
I am facing an issue where it seems the L6470 drops the most-significant bit of each byte transferred when I GetParam ABS_POS. Here is a screenshot of the SPI comminucation during the last byte transferred when the ABS_POS is at 0. To me, L6470 is writing 0000 0001 (binary) to the line. It seems only 7 bits are transferred before the SO goes back HIGH... or L6470 is seeing the rising CK edge prior to the CS low event. When I zoom in, I see the CK goes HIGH on the first edge approx. 30ns before CS low. Does anyone see anything in this image that helps explain the behavior? Or an I missing some configuration needed for ABS_POS to work correctly? Thanks for any help you can provide. Right now, I'm stumped.... Jason. #l6470-abs_pos #l6470-abs_pos2015-03-09 01:29 AM
Sorry, I'm missing some key information for reading the image:
GREEN = CS YELLOW = CK PINK = SO BLUE = SI2015-03-18 12:42 AM
For anyone interested,
I got this working. The issue is that the L6470 did not like the CLK signal going low between writing the GetParam ABS_POS and each read byte. I had to change the SPI driver on the host to maintain CLK HIGH throughout the transmission. Hope this helps others if you have a similar problem. Jason.2018-02-08 11:13 AM
Hi, i have same exact problem, losing data only on single byte MSB, it just does not want to be at the clock front, and does not matter what i do :\
And i can change my SPI clocking, since it is done via FT232H MPSSE, i really don't want to make big bang SPI by using GPIO :\any fix ?