cancel
Showing results for 
Search instead for 
Did you mean: 

STM32WL Memory definition in Lorawan_end_node

RPaja.1
Associate II

Hello,

I am developing my own project based on Lorawan_end_node project, i have some doubts regarding to memory addressing.

In linker file:

/* Memories definition */
MEMORY
{
  RAM1   (xrw)   : ORIGIN = 0x20000000, LENGTH = 32K
  NVM_RAM (rw)   : ORIGIN = 0x20008000, LENGTH = 4K
  RAM2   (xrw)   : ORIGIN = 0x20009000, LENGTH = 28K
  FLASH   (rx)   : ORIGIN = 0x08000000, LENGTH = 248K
  USER_Key_region_ROM (rx)    : ORIGIN = 0x0803E500, LENGTH = 768
}

I don not unsdestand NVM_RAM section, what is it? and USER_Key_region_ROM?

I am trying to optimizate LoRaWAN NVM Context save proccess in FLASH. By default it is saved in

#define LORAWAN_NVM_BASE_ADDRESS          ((void *)0x0803F000UL)

It would be the last two pages(2x2kB) of flash memory in case FLASH memory LENGTH  would be 256K as expected..

Normally, another section would be present, something like this

USER_FLASH (rx) : ORIGIN = 0x0803F000UL , LENGTH = 4K

Can someone help me to undestand this?

Regards,

1 REPLY 1
IIRHO.1
ST Employee

Hello @RPaja.1​   and welcome to ST Community.

I advise you to check these resources :

hope this is helpful

Issam

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.