merhaba arkadaşlar aşağıdaki kodda bir sorunum var butona her bir saniyede basılıyor basılan her saniyedeki butonda animasyon 1 i calıştıracağım ve atıyorum 3 veya 4 saniye sonra aynı butona veya öteki butona basınca zamanı geciktiremedim sadece aynı animasyonu iki defa oynatabildim ayrıca birinci ve ikinci butona aynı zamanda basılırsa her sanıye önce 1. animasyon sonra ikinci animasyon ve üçüncü animasyon sırasıyla çalışıyor ama iki butona aynı zamanda basılırsa animasyon 3 ü çalıştıramadım değerli yardımlarınızı bekliyorum
teşekkürler
#include <12F683.h>
#fuses INTRC_IO,MCLR,PROTECT,NOPUT,NOIESO,NOFCMEN
#use delay(clock=4000000)
//#rom 0x7FF = {0X3400}
#define LED1 PIN_A0
#define LED2 PIN_A1
#define LED3 PIN_A2
#define buton1 PIN_A4
#define buton2 PIN_A5
void animation1(){
output_high(LED1);
delay_ms(150);
output_high(LED2);
delay_ms(150);
output_high(LED3);
delay_ms(150);
output_low(LED1);
delay_ms(150);
output_low(LED2);
delay_ms(150);
output_low(LED3);
delay_ms(150);
}
void animation2(){
output_high(LED3);
delay_ms(150);
output_high(LED2);
delay_ms(150);
output_high(LED1);
delay_ms(150);
output_low(LED3);
delay_ms(150);
output_low(LED2);
delay_ms(150);
output_low(LED1);
delay_ms(150);
}
void animation3(){
output_high(LED1);
output_high(LED2);
output_high(LED3);
delay_ms(100);
output_low(LED1);
output_low(LED2);
output_low(LED3);
delay_ms(100);
}
void main(){
int i,z,k;
int1 c;
while(true){
if(!input(buton1)&&(!c)){
for (i=0;i<2;i++)
animation1();
}
else{c=0;}
if(!input(buton2)&&(!c)){
for(z=0;z<2;z++)
animation2();
}
else{c=0;}
if(!input(buton1)&&!input(buton2)&&(!c)){
for(k=0;k<2;k++)
animation3();
}
else{c=0;}
}
}