Programin uzunlugunu sabit bir sayi yapmak

Başlatan z, 13 Haziran 2014, 00:52:27

z

Yasadigim bir problemi kendi usullerimce cozmeye karar verdim.

Ancak burada da takildim.

Yazdigim program 1K dan daha kisa. Programda ufak degisiklikler yapsam da program boyu 1K yi kesin asmiyor.

Programin en sonuna gerektigi kadar 0xFF  gibi bir sayi  ekleyerek program uzunlugunun hep 1K olmasini istiyorum.

Kac tane FF olacagina derleyici kendi karar versin.

Ancak beceremedim.

Programin en sonuna Son adinda label koydum. Hemen arkasina da

        Space  1024 - (Son-0x08000000)

gibi bir komut yazarsam derleyici bu satirdaki parametreye kiziyor.

Elim kolum baglandi.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Burak B

Scatter file ile olmuyor mu ?
Aşağıdaki linkteki yöntemi kendinize uyarlayabilirsiniz sanırım. Burada her ne kadar boş alanları önceden tanımlı bir değer ile doldurmaktan bahsetmişse de aynı yöntemi belirli büyüklükte bir flash alanı içinde yapabileceğiniz gerçeğini değiştirmiyor.
ARMLINK: FILL UNUSED FLASH CONTENT WITH PREDEFINED VALUE
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

z

#2
Hocam scatter basima dert oldu o yuzden boyle bir yola basvurdum.

Derdim 2 parca yazdigim programin 1. parcasini standart sekilde 0x0800.0000 e yerlestirmek.

Ikinci parcayi ise adresi belli bir alana yerlestirmek.

Bunu beceriyorum ama bu kez de debug asamasinda 2. parca ile ilgili programi debug edemiyorum.

-------

Ben de 1. parcayi fix uzunluga set edip ikinci parcayi da bunun sonuna eklemeyi dusundum. Boylece  tek parca programim olacak. 2. parcanin adresi de benim istedigim yerde olacak.

Boylece debug sorunum hallolacak ve isime devam edebilecegim. Hic olmazsa bu sorunu cozecem diye debelenip durmamis olurum.

Program memoryde SPACE komutundan sonra verilen sayisal deger kadar bos alan konuyor. Sayisal deger yerine label degerlerinden bir seyler hesaplatip koymak istiyorum ama bunu kabul ettiremedim.

Ote yandan IF LABEL=0x8001000 gibi bir satira sistem kizmiyor.



mesaj birleştirme:: 13 Haziran 2014, 02:13:26

Kodlari arka arakaya yerlestirecegim. Keil 2. programi nereye yerlestirmis adresine bakacagim. Elle iki program arasina kac tane 0xFF ilave edilecegini hesaplayacagim. Sonrada space komutunu dayayacagim.

Gicik oldum bu ise.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com