Skip to main content
DFuchs
Associate III
Mar 11, 2020 12:38 PM UTC
Solved

Which EEPROM is usable to boot from a STM32H7xx via I2C?

Hi,

in AN2606 Rev.42 the needed slave address for the EEPROM is 0b1001110x but I cannot find any suitable chip. Is it a typo because i would suspect a slave address like 0b1010xxxx?

Kind regards

Daniel

This topic has been closed for replies.
waclawek.jan
waclawek.janBest answer
Super User
Mar 12, 2020 8:07 AM UTC

This is probably a misunderstanding.

The bootloader in STM32 is not intended to load a program from an external I2C memory into its internal memory and run it from there, as is the case with some SoC.

The bootloader in STM32, when run (subject to pin and configuration bit "patterns"), waits on its peripherals until an external master starts to "talk" to it, and then through this channel, the external master "burns" program into STM32's internal FLASH.

In other words, STM32 is *slave* in bootloading, whether I2C or other ways.

JW

2 replies

waclawek.jan
waclawek.janBest answer
Super User
Mar 12, 2020 8:07 AM UTC

This is probably a misunderstanding.

The bootloader in STM32 is not intended to load a program from an external I2C memory into its internal memory and run it from there, as is the case with some SoC.

The bootloader in STM32, when run (subject to pin and configuration bit "patterns"), waits on its peripherals until an external master starts to "talk" to it, and then through this channel, the external master "burns" program into STM32's internal FLASH.

In other words, STM32 is *slave* in bootloading, whether I2C or other ways.

JW

DFuchs
DFuchsAuthor
Associate III
Mar 12, 2020 9:33 AM UTC

Thank you!

I will add a standard i2c eeprom for fault back data and i have to protect my firmware in the internal flash. My firmware must decide at start up if it needs data from the i2c.

Kind regards

Daniel