Stm32 External Flash

Başlatan robikod, 31 Aralık 2021, 15:17:14

robikod

Merhabalar,

Biraz karışık gibi olsa da kafamı karıştıran bir soru var, bu soruya cevap arıyorum.
Kullandığım işlemcinin flash memorysi yeterli olmadığı için external flash kullanmayı düşünüyorum.
External flash kullanmakla alakalı bir sorun yok bu kısımları gayet iyi bir şekilde anladım, şu soruya yanıt arıyorum

1) Memory mapped mode'a set ettiğim 0x8000000 adresinde çalışan bir kod oluşturdum.

2) Bu kodu 0x900000 adresine yani external flash adresine jump edip, asıl kodumu external addres içine yazdım diyelim.

3) External kodun linker dosyasında adresim 0x900000 yani artık kod hep 0x900000 adresinden başlayacak

4) External kodun içinde, uart üzerinden kod güncellemek için özellikler ekledim.

5) Yeni gelen kodu flashtaki 0x910000 adresinden itibaren yazdım. Ancak yeni firmware deki linker dosyasını 0x910000 olarak değiştirmek istemiyorum.

Sorum şu, external flashtayken linker ayarı yapmadan istediğim adresten başlayabileceğimi bir register ile konfigüre edebilir miyim ? FLASH register boot address FLASH_BOOT_CURR) registerlarını kullansam bu kez ilk baştaki 0x800000 adresi mi değişir ?