cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F746 FMC configured for 8bit parallel interface, extra bytes sent

DBurr
Senior

Hi,

I'm trying to get parallel communication working between an STM32F746 using its FMC peripheral with a Zilog chip (Z8523L16VEG) that acts as a RS485 serial port. The interface to the Zilog chip is an 8 bit parallel interface. So far I have the FMC on the STM32 configured as a PSRAM device connected to Bank 1. In this configuration I can write to bank 1's address (0x60000000) and it will write data to the interface but it always writes at least 8 bytes of data, the first containing the data I'm trying to write, the remaining are all 0s. What am I doing wrong in configuring the FMC so that it won't write just 1 single byte at a time?

Thanks,

Doug Burrell

1 ACCEPTED SOLUTION

Accepted Solutions
berendi
Principal

It could be the L1 cache configured by default in writeback mode. Very similar to this one:

https://community.st.com/s/question/0D50X0000BtaWB2SQM/known-issues-with-dcache-and-fmc-on-stm32f7

View solution in original post

2 REPLIES 2
berendi
Principal

It could be the L1 cache configured by default in writeback mode. Very similar to this one:

https://community.st.com/s/question/0D50X0000BtaWB2SQM/known-issues-with-dcache-and-fmc-on-stm32f7

DBurr
Senior

Thanks, yes I've since got it sorted out... I found a very similar post after I made my post: https://community.st.com/s/question/0D50X00009XkWQE/stm32h743ii-fmc-8080-lcd-spurious-writes. What I did was change the address 0x60000000 to be non cacheable, non-bufferable using the MPU and that seems to have fixed it.