MicroC de Timer1 flag ile durdurma

o1avcioglu

Üye
Katılım
10 Nis 2014
Mesajlar
8
Puanları
1
Merhaba arkadaşlar.
3 adet milisaniye hassasiyetinde ölçüm yapan timer yapmam gerekiyor. tabiki bunun için interrupt kullandım. Ancak start veriyorum program saymaya başlıyor lcd ekrana da yazıyor. Ama butona bastığımda bunun durması gerekiyor bir türlü durduramıyorum.
Programdaki interrupt bloğum şu şekilde:

void interrupt(){
INTCON.GIE =0;
INTCON.INTE =1;
if(RBIF_bit == 1 ) { // Checks for Receive Interrupt Flag bit
RBIF_bit = 0; // Clear Interrupt Flag
if(PORTB.B7 == 1)
{
start=1;
RC5_bit=1;
}

if (RC0_bit == 0 && RC1_bit == 1) //açma testi
{

if (RB4_bit == 0 && flag1 ==1)
{
if (RB4_bit == 1 )
{
flag1=0;
}
}
if (RB5_bit == 0 && flag2 ==1)
{
if (RB5_bit == 1 )
{
flag2=0;
}
}
if (RB6_bit == 0 && flag3 ==1)
{
if (RB6_bit == 1 )
{
flag3=0;
}}}

if (RC0_bit == 1 && RC1_bit == 0) //kapama testi
{
if (RB4_bit == 1 && flag1 ==1)
{
if (RB4_bit == 0 )
{
flag1=0;
}
}
if (RB5_bit == 1 && flag2 ==1)
{
if (RB5_bit == 0 )
{
flag2=0;
}
}
if (RB6_bit == 1 && flag3 ==1)
{
if (RB6_bit == 0 )
{
flag3=0;
}
}

}

nasıl bir düzenleme yapmalıyım ki startla başlattığım timer ı RB4-5-6 ile durdurabileyim. Önerilerini bekliyorum.
 

Forum istatistikleri

Konular
128,269
Mesajlar
916,351
Kullanıcılar
450,093
Son üye
plmkenan

Yeni konular

Geri
Üst