cancel
Showing results for 
Search instead for 
Did you mean: 

STM32F401 FSMC

nps
Associate II
Posted on May 06, 2016 at 10:44

Hi all,

I enabled FSMC bus on STM32F4 series controller. When nothing is connected to the bus, and when I do a write followed by read, I am getting the same data that was written. Can anyone help me understand why this is happening? Should I not get 0xff ideally? Also is there a provision to enable pull-ups on the data bus? Thank you.
1 REPLY 1
Posted on May 09, 2016 at 21:57

> I enabled FSMC bus on STM32F4 series controller. When nothing is connected to the bus, and when I do a write followed by read, I am getting the same data that was written.

> Can anyone help me understand why this is happening?

If there is nothing to drive the pins up or down (i.e. no pullups, no pulldowns, no active external devices), the parasitic capacitances of the pins and traces will maintain the written state usually long enough to be able to read it back within a few microseconds (parasitic capacitances are in picofarads, sometimes even few tens of them; leakages are in megaohms). Insert a longer delay, or touch the traces with fingers (carefully, discharged) and you'll get corrupted version of the data.

> Also is there a provision to enable pull-ups on the data bus?

Yes, simply enable the pullups by GPIOx_PUPDR register(s) related to the bus pins.

JW