Skip to main content
Visitor II
May 18, 2007
Question

Please help in jump to another bank

  • May 18, 2007
  • 3 replies
  • 544 views
Posted on May 18, 2007 at 09:53

Please help in jump to another bank

    This topic has been closed for replies.

    3 replies

    k_arthurAuthor
    Visitor II
    May 17, 2011
    Posted on May 17, 2011 at 09:43

    I read datasheets and many posts from this forum but still i have problems

    the writen to bank0 aplication not always work as expected.

    for example this part of code is used in IAP from STMicro

    FMI->BBSR = 0x0;

    FMI->NBBSR = 0x6;

    FMI->BBADR = 0x80000 >> 2;

    FMI->NBBADR = 0x0 ;

    /* Jump to the user application and execute it */

    Jump_To_Application = (pFunction) 0x00;

    Jump_To_Application();

    in my case this not work. Please if in your case the downloaded

    aplication work, please post it in this forum.

    Best regards,

    kesart

    Visitor II
    May 17, 2011
    Posted on May 17, 2011 at 09:43

    Hello kesart,

    I think you downloaded a code in Bank0 using a code in Bank1. Bank0 and Bank1 are hardware remapped using CAPS.

    Then, you want to jump to the Bank0 from Bank1 after software remapping the two Banks.

    The code that you provided and which corresponds to the software remapping of both banks then the jump to the user application must be executed from RAM.

    So, I suspect your problem comes from the fact that this code is not executed from RAM.

    Hope this helps you.

    Regards,

    Najoua.

    k_arthurAuthor
    Visitor II
    May 17, 2011
    Posted on May 17, 2011 at 09:43

    Thank you i understand. It like to cut the branch that you seat on.

    I tried to run from ram ,but i still need help. I yet have no idea to try.

    Is it possible to jump to 0x80000 and not to do soft remaping before. May be to change the state of some registers and just to jump to intended address.

    As i understand at the beginning of the code we have Initialization part

    (for example if i link(by linker) the aplication from address 0x80000) everything i needed is just to jump to 0x80000, or not? What is my mistake?

    [ This message was edited by: kesart on 21-05-2007 06:58 ]