#include <main.h>
#define buton pin_b0
#define led1 pin_d0
#define led2 pin_d1
#define led3 pin_d2
#define led4 pin_d3
int deger=0;
int bas1, bas2, bas3, bas4;
void main()
{
set_tris_b(0x01);
set_tris_d(0x00);
output_d(0x00);
output_d(0x01);
output_d(0x02);
output_d(0x03);
while(true) {
bas1=0;
bas2=0;
bas3=0;
bas4=0;
/* önce tuş fonksiyonunu, kaç defa basıldığını tespit edelim */
if (input(buton)==1) {
bas1=1;
delay_ms(300); /* saniyede 3 kez basılabilecek bir hızda diyelim, sıklık değiştirilebilir */
if (input(buton)==1) {
bas2=1;
delay_ms(300);
if (input(buton)==1) {
bas3=1;
delay_ms(300);
if (input(buton)==1) {
bas4=1;
delay_ms(300);
}
}
}
}
/* Sonra istenen işlemi yerine getirelim */
if (bas4==1) { /* 4 ten başlamanın sebebi yukarıda görüldüğü gibi tuş basma esnasında */
output_high(led1); /* tüm bas? değişkenlerine 1 atanıyor, olabilen en büyük yerine getirilmeli */
output_high(led4);
delay_ms(2000);
output_low(led1);
output_low(led4);
} else
if (bas3==1) {
output_high(led2);
output_high(led4);
delay_ms(5000);
output_low(led2);
output_low(led4);
} else
if (bas2==1) {
output_high(led1);
output_high(led3);
delay_ms(3000);
output_low(led1);
output_low(led3);
} else
if (bas1==1) {
output_high(led1);
output_high(led2);
output_high(led3);
output_high(led4);
delay_ms(2000);
output_low(led1);
output_low(led2);
output_low(led3);
output_low(led4);
}
}