cancel
Showing results for 
Search instead for 
Did you mean: 

STMH755 and FDCAN Bootloader settings

TOlli
Senior

Hi,

I've been going through application note AN2606 for the bootloader in STM32H755.

The note says that pattern 10 needs to be executed.

Pattern 10 has two conditions:

  1. Boot(pin) = 0 and BOOT_ADD0(optionbyte) = 0x1FF0
  2. Boot(pin) = 1 and BOOT_ADD1(optionbyte) = 0x1FF0

Now, when I search the reference manual for BOOT_ADD0 and BOOT_ADD1 I can only find these entries:

  1. BOOT_ADD1BOOT_CM7_ADD1. default 0x1FF0
  2. BOOT_ADD0BOOT_CM7_ADD0, default 0x0800
  3. BOOT_CM4_ADD1, default 0x1000
  4. BOOT_CM4_ADD0, default 0x0810

The first one seems to be the only one with the correct initial value.

Are these the correct registers to associate with the bootloader pattern?

Tell me if I'm correct:

If I associate CANFD1 with CM7, and leave the registers as they are. Condition 2 of pattern 10 should start the bootloader when the device is started (provided boot0 pin is correct)?

When the bootloader is active, I can flash programs for both cores, CM4 and CM7, provided I flash the programs into the correct memory locations? I do not need to transfer the control of the FDCAN to M4 to flash its program?

Does it matter which core the FDCAN was associated with, and the bootloader actually handles this internally? Example, if FDCAN is associated with CM4, but BOOT_ADD1BOOT_CM7_ADD1 satisfies the condition for pattern 10 during power on, the bootloader is started.

And just out of curiosity, why are there so many register keys? Is it to keep one core operational if need be or is there something I'm missing here?

Thanks,

Tero

0 REPLIES 0