Skip to main content
YOkum.1
Associate
May 20, 2021 12:33 PM UTC
Solved

HAL_SPI_Receive with LSB LSB is always read as '0'

Hello. I am trying to read ReRAM( FUJITSU: MB85AS4MT) by using HAL_SPI_Receive().

But the LSB is recognized as 0 even the reply from ReRAM is returning 1 to LSB.

(ex: '11111111' is recognized as '11111110', or '01010101''' is recognised '01010100' )

As far as I see the signals by the Oscilloscope, ReRAM returns the proper signal. I guess it is an STM32 board side problem. Could someone solve the issue?

System details

STM32F429 Discovery1

ReRAM : MB85AS4MT(ReRAM)

The picturs shows ReRAM read operation part, singal when ReRAM reply '11111111' but STM32 recognize it as '11111110' and my implementation.

Thank youvery much for your help.

This topic has been closed for replies.
waclawek.jan
waclawek.janBest answer
Super User
May 20, 2021 9:20 PM UTC

Maybe the Corrupted last bit of data and/or CRC, received in Master mode with delayed SCK feedback erratum?

How is OSPEEDR set for SPI_SCK pin?

JW

2 replies

waclawek.jan
waclawek.janBest answer
Super User
May 20, 2021 9:20 PM UTC

Maybe the Corrupted last bit of data and/or CRC, received in Master mode with delayed SCK feedback erratum?

How is OSPEEDR set for SPI_SCK pin?

JW

YOkum.1
YOkum.1Author
Associate
May 25, 2021 4:16 PM UTC

Hello JW. Thank you for your reply.

The OSPEEDR set for SPI_SCK pin was "Low" as attached image.

After changing it to "Very High", it works properly. Thank you very much.

0693W00000APktlQAD.png