I've got a little problem on my bspi link : -> First my str712 is slave on spi link. I transfer data continuously on spi using Tx fifo (filling fifo in timer It). --------------------------------------- My problem --------------------------------------- -> I have a shift of data on the link.so, after all my data (i fill the tx fifo in an It) are shifted ! --------------------------------------- Analysis --------------------------------------- -> In fact, i can begin a spi link when master SS disable, and so fifo is fulled and it works pretty well. -> But , i can a spi link when master SS enable and SCLK too, and so fifo is fulled and my bspi will begin to transmit a part of dat (but not all because the rest will be sent on the next SS and will shift everything) --------------------------------------- solution ???? --------------------------------------- So, i saw in ref manual that i should disable bspi (p235). But i don't see well how to do it exactly in my software in order to align well data. I hope I explained my problem clearly. Thanks for your suggestions Jorge
-> I have a shift of data on the link.so, after all my data (i fill the tx fifo in an It) are shifted ! Shifted? What do you mean? Please explain. Some code would be nice too.
As far as I understood, you begin filling the trasmit FIFO too late or too early. I would suggest monitoring the status of the SS pin and only begin filling the transmit FIFO when it's safe to do so. Please correct me if I'm wrong.
I think too that the best way should be to monitore the status of /SS pin.
I'm gonna to try this way. but, maybe, another solution should be using the ''Transmit fifo empty flag'' Interrupt TIE:01. to see .... So thanks for reply volius, i'll reply when i find a smart solutions ! if any others encountered the problem, please let me know how did you resolved it. Regards, Jorge
I used the ''Transmit fifo empty flag'' interrupt in order to solve it . That's better, not perfect ! :( I would like to ask to St moderator if the problem of disalignement of spi data is well known and can it be repaired ? In reference manual, the problem is named, but that's far to be clear !!! that's not well explicated. So, please respond and give a sustainable solution !! Because of this problem, i'm wondering if i change my choice and design project concerning ST arm family. Thanks, Regards, Jorge