cancel
Showing results for 
Search instead for 
Did you mean: 

Question about boot0 hardware

siyar
Associate II

siyar_0-1747044127519.png

Pin 2 is connected to Boot0. is it Okey to do this (not using resistors).?

1 ACCEPTED SOLUTION

Accepted Solutions

> How does a pull-down resistor remove the need for an expensive switch? Does it have something to do with the switch momentarily connecting 3.3V to GND when switching it?

"Boot0" is a functionality assigned to this pin only during startup, i.e. the reset phase.
At this point, the core samples the state of all designated "Boot<n>" pins, and take action accordingly.
I assume Boot0=Low implies your MCU variant executes the ROM / system bootloader. Details are described in the datasheet/reference manual.

During "normal" operation, this "Boot" functionality is of no significance, you can use this pin for other purposes (GPIO, serial IO, analog, etc.).

A high-impedance pull-down would not interfere with most other functionalities.
However, you probably don't want to start into the ROM bootloader every time, just on occasions to perform a firmware update. Thus a fixed pull-down resistor is probably not what you want.

View solution in original post

6 REPLIES 6
Peter BENSCH
ST Employee

A pull-down resistor is usually used because you then do not need an (expensive) switch and only have to set BOOT0  to H. However, you can of course also use a switch as long as the BOOT0 of the STM32, whose type you have not specified, has no alternative function.

Hope that helps?

Regards
/Peter

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.
Ozone
Principal

> Pin 2 is connected to Boot0.

I think this is formally not correct. Pin 2 <is> Boot0.

As Peter Bench noted, a direct connection vis switch is not a problem.
However, besides of the additional costs, you might be unable to use the pin for other purposes. Which becomes more critical with low-pin count packages.

A jumper bridge is cheaper.

Hi Peter

Thanks for the reply. 

How does a pull-down resistor remove the need for an expensive switch? Does it have something to do with the switch momentarily connecting 3.3V to GND when switching it?

A high-impedance pull-down can easily be overwritten by an external or internal signal, so that, as @Ozone wrote, the pin can also be used for other purposes. This external signal can also be a jumper after VDD, which activates the bootloader in the event of a RESET.

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

> How does a pull-down resistor remove the need for an expensive switch? Does it have something to do with the switch momentarily connecting 3.3V to GND when switching it?

"Boot0" is a functionality assigned to this pin only during startup, i.e. the reset phase.
At this point, the core samples the state of all designated "Boot<n>" pins, and take action accordingly.
I assume Boot0=Low implies your MCU variant executes the ROM / system bootloader. Details are described in the datasheet/reference manual.

During "normal" operation, this "Boot" functionality is of no significance, you can use this pin for other purposes (GPIO, serial IO, analog, etc.).

A high-impedance pull-down would not interfere with most other functionalities.
However, you probably don't want to start into the ROM bootloader every time, just on occasions to perform a firmware update. Thus a fixed pull-down resistor is probably not what you want.

siyar
Associate II

Oh i get it now. Thanks @Ozone  and @Peter BENSCH , that was very helpful!