Stm32 rom bellek yonetimi

Başlatan bybik, 22 Mayıs 2014, 17:09:05

bybik

Stm32 için bir kod yazdım diyelim led blink.Led blinkin romda baslangıc adresi 80 bitiş adresi ise 82 diyelim(burda sıkıntı yok zaten stm32nin default baslangic adresi 80).Bu programa birde bootloader yazalım.Bootloader ise romdaki baslangıc adresi 87 bitiş adresi 89(Burda sıkıntı baslıyor 82 ile 87 arası bos bellek olucak). Bu iki kodu aynı projede derleyip hex çıktısını nasıl alabilirim.

Bunun için hexmerge bir çözüm olabiliyor.Ama aradığım yöntem bu değil.

Daha çok şöyle bir şey arıyorum.

locate to 0x800  size 100
{
bu parantez aralığındaki kodu üstteki aralığa yaz gibi.
}

Aklımdakini anlatamadıysam.Yazıyı birkez daha elden geçirebilirim  :D

yamak

Bootloader ı rom belleğin en üstüne ana programını onun altına yerleştirsen olmuyo mu?Ayrıca keil'da programın başlangıç adresini belirtebiliyosun.

bybik

Bootloader olarak tarif ettiğim kodu bootloader olarak görme aslında amacı çok farklı.Sistem yapısı gereği ana program basta olması gerekiyor

Keildeki adres yöntemi programın sadece ilk baslangic adresini degistirebiliyor.Bana ortadaki yada altttaki kod için adres yönetimi gerekiyor.