2013-05-22 01:57 AM
Hello,
I'm new in this forum and I'm not an english-speaker, so, sorry for some orthography mistakes. I'am currently on a developpement of an electronic board that embeds a STM32F4xx and is supplied by 2.5V coming form a 3.7V Li-Polymer batterie with back-end 2.5V regulator. This MCU is programmed on the JTAG connector connected to the J-Link programmer. My questions are : - Can we program the MCU with this voltage level knowing that the STM32F4xx datasheet notice that the flash programming bit numbers depends on the supply voltage level of the MCU : 2.7V-3.6V for 32 bits, 2.1V-3.6V for 16 bits and 1.8V-3.6V for 8 bits. - So, I don't know exacticly how can we do to change the number of the bits. I thought that the CPU communicates automatically, with the suitable bits number, with the internal flash memory but I maybe make a mistake. Then, I need your help before I make the PCB of my application. Thanks all. #microcontroller-projects #hardware2013-05-22 04:03 AM
2013-05-22 05:43 AM
I believe this wordsize restriction comes from specific flash programming requirements. To have flash erased/programmed, a voltage in excess of 9V is required. This voltage is generated internally by some integratedswitched-capacitor booster. And with falling supply voltage, the booster current rises. So this wordsize limits is actually a booster current limit. Otherwise, the voltage would drop below the requirements for the tunneling effect, and erase/program would fail. For specific details of ST's flash implementation, you might need to ask ST directly.
2013-05-22 06:46 AM
@clive1
Thanks for these technical details. You may probably be rigth about contacting Segger and I will do this.2013-05-22 06:52 AM
@fm
I think that Vpp pin is used only for the 64 bits parallelism. Anyway, using a boost converter involves a large current pumped on its input, so, I don't want to fastly discharge my battery. I've requested on ST's technical support for this but I have not a response yet.2013-05-22 07:13 AM
I think you got me wrong.
This booster is integral part of the MCU silicon, and you have no way to influence it, except by setting Vdd. And yes, the current draw for programmin rises with dropping Vdd. This is less significant for a 32 bit MCU drawing 10...50mA. For a low-power 8 bit MCU, I have measured a rise in supply current from 2.5mA to 8.0mA during programming, just as example.