SAMB11 - SPI Flash memory address

Go To Last Post
4 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi all,

 

I find a example about spi-flash of samb11. but i don't know where is the first address of spi-flash (is the first byte in .img file too) that i can read to check content.

And in specs, samb11 has 256kb flash, but when i read entire flash use atmel-ice only 128kb is read. Please help me explain it.

 

Thank you very much,

Phien

Last Edited: Thu. May 19, 2016 - 01:49 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Phien,

 

I think you are reading the 128kb of ROM when you use the atmel-ice debugger rather than the SPI flash. I've attached a training PDF I received from Atmel that might shed some light.

 

Regards,
Chris

Attachment(s): 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hi Chris,

 

In AtmelStudio, I select Tool > Device Programming, I read Device signature here, and in Memories tab (use to program, verify ...). The window display "SPI Flash (128KB)", and when i used function read only 128KB be accessed.

Actually, i want to write a bootloader program that i can safety upgrade firmware.But, as i understood, bootrom will read all data in flash, then copy to ram and excuse it. So, if i only write data (in .img file) in flash, Samb11 won't understand and excuse new firmware i write. Do you have solution for this?

 

Thank you,

Phien 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

SAMB11 contains ROM which is one time programmable from Atmel. This ROM will hold the BLE core functionality related code. Once the ROM is programmed with this firmware, will not be able to write or erase. SAMB11 also has internal stacked flash connected through SPI interface. This flash can be used to hold the application code like profiles/services/user application which runs on top of BLE core firmware. This application code is written to Flash using the SWD interface, and there is a bootloader code in ROM, on startup will fetch this flash application code and place it in internal RAM. The application code of 128K max will run from the RAM. The remaining 128K flash in 256K flash may be for OTAU upgrade..