This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Code Banking

I'm working with a 32K microcontroller using external code banking. The external bank area is in address 0x8000- 0xFFFF and I have 16 banks of 32K.

If I configure a function in bank 0 I see that its code is in address 0x8000, but if I configure this function in bank 1 I see that code is in 0x18000.

I think if the size of the banks is 32K, if I choose Bank 1 for this function I should see the code of this fcn. in address 0x10000.

Parents Reply Children
  • "The size of the external memory banks can be different to 64K ?"

    I think you need to look-up Keil's description of their code banking in the Manuals!

    Switching 64K means that you are switching the entire CODE address space of the 8051!

    Keil's code banking requires a common area that is always present - so, effectively, you cannot have 64K banks.