Skip to main content
Visitor II
August 12, 2019
Solved

How to use the Bootloader command 0x11 (Read_Memory)

  • August 12, 2019
  • 2 replies
  • 1405 views

Hi. I have an STM32MPU157-DK2 Board in Engeneering mode.

i have power connected and the USB to the debug chip.

The Connection is successfully established.

I use a Terminal Programm to send and receive in hexadecimal numbers.

My Connectiondetails are 57600 Baud, 8N1

I send the first command 0x7F to establish a communication. it works.

all following commands are by hand so there is a little time between the commands.

I shorten the following communication a little bit,

me is my terminal & me,

bl is the bootloader

Me> 0x7F

BL> 0x79

Me> 0x00 0xFF

BL> 0x79 0x07 0x40 0x00 0x01 0x02 0x03 0x11 0x21 0x31 0x79

Me> 0x01 0xFE

BL> 0x79 0x10 0x00 0x00 0x79

Me> 0x02 0xFD

BL> 0x79 0x01 0x05 0x00 0x79

Me> 0x11 0xEE ( Read Memory)

BL> 0x79

Me> 0x10 0x00 0x00 0x00 0x10 (From 0x10000000,, SRAM1)

BL> 0x79

Me> 0x00 0xFF (1 Byte)

BL> 0x790xE0 0xE0 0xE0 0x00 0xE0 0xE0 0xE0 0x00 (...)

the output doesnt make much sense to me.

I tried several lengths (1 byte, 33 Bytes, 256 bytes)

and everytime there is several Kbytes of ****** data. all 00 or E0 or a few 0xFC and a few 0xF0. then the bootloader hangs. no communication is possibile anymore, i have to reset the board.

this does not make sense to me. I tried also several Areas,

0x00000000 ( Boot Rom), 0x2FFC0000 (Sysram)

all are not working....

what am i doing wrong?

    This topic has been closed for replies.
    Best answer by DRest

    Ok, i found out, just the beginnig of the SYSRAM gives those Problems.

    if i read from the address 0x2FFC000 is breaks. But i read in the WIki that the first 9 Kbyte (0x2400) is used by the bootloader.

    and if i read from 0x2FFC2400 it works!

    great.

    Next step: i will write my FSBL and start it.

    2 replies

    DRestAuthor
    Visitor II
    August 12, 2019

    My bad, i am in Serial boot, not egneneering boot.

    additionally, i just noticed that there is an Command listed in the available commands that is not listed in the manual that i used (AN3155)

    Command 0x03 0xFC gives me the answer 0x79 0x06 0x01 0x00 0x24 0xFC 0x2F 0x01 0x00 0x79

    DRestAuthorAnswer
    Visitor II
    August 14, 2019

    Ok, i found out, just the beginnig of the SYSRAM gives those Problems.

    if i read from the address 0x2FFC000 is breaks. But i read in the WIki that the first 9 Kbyte (0x2400) is used by the bootloader.

    and if i read from 0x2FFC2400 it works!

    great.

    Next step: i will write my FSBL and start it.