Kesme'den döngüye geri dönmesin!

Başlatan poke53280, 02 Aralık 2015, 11:42:30

poke53280

Selam,

MikroPascal + 16F887 ile yaptığım bir projem var. MikroPascal kullanan yoksa MikroC kullanıcıları bunu nasıl yapardı yazabilirler.

Önce alttaki koda bir göz atalım;

Mesela satir10 işlerken kesme olduğunda, kesmedeki satırların çalışması tamamlanınca satir11'e geri dönmesini isteMİyorum.
Begin - End aralığında ki satir11, satir12, delay_ms(1000) işlemeden End'e gelmesi lazım ya da Begin-End aralığına geri gelmemesi lazım.

Not: DisableContextSaving vs. terimler buldum,nasıl kullanacağımı bilemedim.

Bilen arkadaşlar, paylaşımlarınızı bekliyorum.

Kesme;
satir1;
satir2;
Kesme_Sonu;
..
..
..
..
..
dongu:

if a>1 then
begin
satir10;
satir11;
satir12;
delay_ms(1000);
end;

goto dongu;

koray692

bence kesme fonksiyonu içinde bir değişken koyup onun değerini değiştirip aşşağıdaki döngüde de if koşulunda girmeme sini ağlayabilirsiniz..

int b=0;

kesme_fonksiyonu()
{
....
..
....

b=1;

}


if(a>1 && b=0)   // && işareti ve anlamına geliyordu sanırım tam emin olamadım ama içi içe ikitane if de koyabilirsiniz farketmez

{

satırlar..

}

sorunu yanlış anlamadıysam bu şekilde olması gerekiyor ....iyi çalışmalar...