Skip to main content
Schmid.M.
Associate III
June 28, 2016
Question

Bootloader through USB Host question

  • June 28, 2016
  • 2 replies
  • 575 views
Posted on June 28, 2016 at 09:38

Hi,

I have a question concerning the STM32 Bootloader through an USB Host (flash drive). There is an Application note AN3354 doing this on the STM32F105, which is exactly my device. I just do not understand the memory management:

the bootloader usually is stored at the beginning of the ROM until adress 0x08000000, right? now, the bootloader application is programmed to the following adress beginning at 0x0800000 until 0x08007FFF, but this is not the bootloader memory? Apart from that, where in the code is defined, which memory should be used for the usb host driver? Isn't it possible that the bootloader will overwrite itself?

thanks for clearification on that, maybe there is an document explaining all that, which I just did not find yet.

best regards,

M. Schmid
    This topic has been closed for replies.

    2 replies

    Walid FTITI_O
    Visitor II
    June 28, 2016
    Posted on June 28, 2016 at 17:23

    Hi schmid.m,

    I recommend you to identify you bootloader version are related limitation and details in the application note

    http://www.st.com/content/ccc/resource/technical/document/application_note/b9/9b/16/3a/12/1e/40/0c/CD00167594.pdf/files/CD00167594.pdf/jcr:content/translations/en.CD00167594.pdf

    in the the section 13 STM32F105xx/107xx devices bootloader (p54) 

    -Hannibal

    Tesla DeLorean
    Guru
    June 28, 2016
    Posted on June 28, 2016 at 17:31

    I'm not sure the question relates to the internal System Loader, but rather the IAP (In-Application Programming) via USB, per the app note.

    http://www.st.com/content/ccc/resource/technical/document/application_note/63/df/93/c6/36/61/47/49/DM00023593.pdf/files/DM00023593.pdf/jcr:content/translations/en.DM00023593.pdf

    The offset/base of the application is defined in the linker settings (script or scatter file) describing where in memory the linker is to create the image for the application, and then also with the setting of the Vector Table (see section 4), typically within the SystemInit() code.

    Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..