Mikro Step
Kıdemli Üye
- Katılım
- 25 Eylül 2022
- Mesajlar
- 5,898
ARM islemciyi ram alaninin disindaki bir adresi okumaya zorlayarak hard fault exception olustuyorum.
Gercekten de islemci bu durumu algilayip Hard Fault Exception handler rutinine giriyor.
Hard fault durumunu yasaklamak icin Faultmask registerine 1 yukluyorum.
Bu durumda exception olusmuyor ve ilgili handlere gidilmiyor. Fakat islemci hard fault olusturan komutu bir turlu terketmiyor ayni komutu dongude kalircasina surekli tekrar ediyor.
Halbuki bu hataya neden olan durum benim bilgim dahilinde sen devam et demek istiyorum. Fakat gorunurde bu dedigim sanirim yapilamiyor.
Ornek kodum asagida. 8'inci satira asla gecilmiyor islemci 7 nolu satirda donup duruyor.
Gercekten de islemci bu durumu algilayip Hard Fault Exception handler rutinine giriyor.
Hard fault durumunu yasaklamak icin Faultmask registerine 1 yukluyorum.
Bu durumda exception olusmuyor ve ilgili handlere gidilmiyor. Fakat islemci hard fault olusturan komutu bir turlu terketmiyor ayni komutu dongude kalircasina surekli tekrar ediyor.
Halbuki bu hataya neden olan durum benim bilgim dahilinde sen devam et demek istiyorum. Fakat gorunurde bu dedigim sanirim yapilamiyor.
Ornek kodum asagida. 8'inci satira asla gecilmiyor islemci 7 nolu satirda donup duruyor.
C-like:
MOV R0, #1
MSR FAULTMASK, R0
LDR R0, =0x20002800
MOV R1, #0x5A
STRB R1, [R0]
LDRB R1, [R0] ; !!! PRODUCE HARD FAULT !!!
....
....