Is it possible to configure the STM32 SPI peripheral such that MISO data is latched on the same clock edge where MOSI data is loaded? Usually (for CPOL=1 and CPHA=1) MOSI updates on the falling edge and on the rising edge MOSI is valid and MISO is latched. (Specifically the STM32L052, but seems to be universal).
My peripheral wants to latch MOSI on the rising edge, but its output data is valid on the falling edge. This device uses half-duplex mode with a single data line. The STM32 ties MISO and MOSI together in this mode. It seems like the STM32 only supports latching on the same edge for both devices. The available modes just change the polarity and which edge is used for both input and output.
I am trying to interface with the proprietary 3-wire interface on the Maxim MAX3948. This initially looks like I2C but its not. Its more like half-duplex SPI with an address and CS for flow control.
I don't require fast IO with this device. Would I be better off just bit-banging it rather than trying to get the SPI peripheral to handle a non-standard protocol?