| ANA PROGRAM AKIÞ DÝYAGRAMI (http://temrinlerim.org/images/kesme/1.png) (http://temrinlerim.org/images/kesme/2.png) (http://temrinlerim.org/images/kesme/3.png) (http://temrinlerim.org/images/kesme/4.png) (http://temrinlerim.org/images/kesme/5.png) (http://temrinlerim.org/images/kesme/3.png) (http://temrinlerim.org/images/kesme/9.png) (http://temrinlerim.org/images/kesme/6.png) (http://temrinlerim.org/images/kesme/3.png) (http://temrinlerim.org/images/kesme/7.png) (http://temrinlerim.org/images/kesme/8.png) | Bir arduino programý pic ve plc programlarý gibi alt alta yazýlan komutlardan oluþur. Arduino çalýþmaya baþladýðýnda ilk komuttan itibaren tüm komutlar yukarýdan aþaðýya doðru sýrayla çalýþtýrýlýr. Arduinoya baðlý sensör, buton, röle kontaklarý gibi çevresel birimlerden gelen verilersürekli kontrol edildiðinden program son komuta geldiðinde tekrar baþa döner ve bir döngü halinde sürekli çalýþýr. Örneðin bir yürüyen ýþýk için yandaki gibi bir akýþ diyagramý söz konusudur. Yandaki akýþ diyagramýnda görüldüðü gibi program tüm komutlarý yukarýdan aþaðýya sýrayla çalýþtýrmak ve en alttaki komutu uyguladýktan sonra tekrar baþa dönüp bu iþlemi sonsuz bir döngü haline getirmekten ibarettir. Akýþ diyagramýna ait arduino kodlarýmýz:
// DIJITAL CIKIS PIN TANIMLAMALARI BASLADI
int birinci_led = 1;
int ikinci_led = 2;
int ucuncu_led = 3;
// DIJITAL CIKIS PIN TANIMLAMALARI BITTI
// DIJITAL GIRIS / CIKISLARIN CIKIS MI YOKSA GIRIS MI OLDUKLARININ BELÝRTÝLMESÝ BURADA BAÞLADI
void setup()
{
pinMode(birinci_led, OUTPUT); // DÝJÝTAL 1 PÝNÝNE 1. LED BAÐLANACAK
pinMode(ikinci_led, OUTPUT); // DÝJÝTAL 2 PÝNÝNE 2. LED BAÐLANACAK
pinMode(ucuncu_led, OUTPUT); // DÝJÝTAL 3 PÝNÝNE 3. LED BAÐLANACAK
}
// DIJITAL GIRIS / CIKISLARIN CIKIS MI YOKSA GIRIS MI OLDUKLARININ BELÝRTÝLMESÝ BURADA BITTI
// ANA PROGRAM BURADA BASLADI
void loop() {
digitalWrite(birinci_led, HIGH); // DÝJÝTAL 1 PÝNÝNDEKÝ LED YAKILDI
delay(500); // 500 ms BEKLE
digitalWrite(birinci_led, LOW); // DÝJÝTAL 1 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(ikinci_led, HIGH); // DÝJÝTAL 2 PÝNÝNDEKÝ LED YAKILDI
delay(500); // 500 ms BEKLE
digitalWrite(ikinci_led, LOW); // DÝJÝTAL 2 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(ucuncu_led, HIGH); // DÝJÝTAL 3 PÝNÝNDEKÝ LED YAKILDI
delay(500); // 500 ms BEKLE
digitalWrite(ucuncu_led, LOW); // DÝJÝTAL 3 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
}
// ANA PROGRAM BURADA BITTI
|
| KART | INTO | INT1 | INT2 | INT3 | INT4 | INT5 |
| Uno, Nano, Mini | PIN2 | PIN3 | ||||
| Mega, Mega2560, MegaADK | PIN2 | PIN3 | PIN18 | PIN19 | PIN20 | PIN21 |
| Micro, Leonardo | PIN0 | PIN1 | PIN2 | PIN3 | PIN7 | |
| Zero | DÝJÝTAL 4 PÝNÝ HARÝÇ TÜM DÝJÝTAL PÝNLER | |||||
| Due | TÜM DÝJÝTAL PÝNLER | |||||
// DIJITAL CIKIS PIN TANIMLAMALARI BASLADI
int birinci_led = 4;
int ikinci_led = 5;
int ucuncu_led = 6;
int dorduncu_led = 7;
int besinci_led = 8;
int altinci_led = 9;
// DIJITAL CIKIS PIN TANIMLAMALARI BITTI
// DIJITAL GIRIS / CIKISLARIN CIKIS MI YOKSA GIRIS MI OLDUKLARININ BELÝRTÝLMESÝ BURADA BAÞLADI
void setup()
{
pinMode(birinci_led, OUTPUT); // DÝJÝTAL 4 PÝNÝNE 1. LED BAÐLANACAK
pinMode(ikinci_led, OUTPUT); // DÝJÝTAL 5 PÝNÝNE 2. LED BAÐLANACAK
pinMode(ucuncu_led, OUTPUT); // DÝJÝTAL 6 PÝNÝNE 3. LED BAÐLANACAK
pinMode(dorduncu_led, OUTPUT); // DÝJÝTAL 7 PÝNÝNE 4. LED BAÐLANACAK
pinMode(besinci_led, OUTPUT); // DÝJÝTAL 8 PÝNÝNE 5. LED BAÐLANACAK
pinMode(altinci_led, OUTPUT); // DÝJÝTAL 9 PÝNÝNE 6. LED BAÐLANACAK
pinMode(2, INPUT); // DÝJÝTAL 4 PÝNÝNE 1. LED BAÐLANACAK
pinMode(3, INPUT); // DÝJÝTAL 5 PÝNÝNE 2. LED BAÐLANACAK
attachInterrupt(0, kesme, RISING); // INT0 pini (dijital2 pini) 1 yapýlýrsa program kesme isimli fonksiyonu yürütür.
attachInterrupt(1, kesme2, RISING); // INT1 pini (dijital3 pini) 1 yapýlýrsa program kesme2 isimli fonksiyonu yürütür.
}
// DIJITAL GIRIS / CIKISLARIN CIKIS MI YOKSA GIRIS MI OLDUKLARININ BELÝRTÝLMESÝ BURADA BITTI
// ANA PROGRAM BURADA BASLADI
void loop() {
digitalWrite(birinci_led, HIGH); // DÝJÝTAL 4 PÝNÝNDEKÝ LED YAKILDI
delay(2000); // 500 ms BEKLE
digitalWrite(birinci_led, LOW); // DÝJÝTAL 4 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(ikinci_led, HIGH); // DÝJÝTAL 5 PÝNÝNDEKÝ LED YAKILDI
delay(2000); // 500 ms BEKLE
digitalWrite(ikinci_led, LOW); // DÝJÝTAL 5 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(ucuncu_led, HIGH); // DÝJÝTAL 6 PÝNÝNDEKÝ LED YAKILDI
delay(2000); // 500 ms BEKLE
digitalWrite(ucuncu_led, LOW); // DÝJÝTAL 6 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
}
// ANA PROGRAM BURADA BITTI
void kesme()
{
digitalWrite(dorduncu_led, HIGH); // DÝJÝTAL 4 PÝNÝNDEKÝ LED YAKILDI
digitalWrite(besinci_led, HIGH); // DÝJÝTAL 5 PÝNÝNDEKÝ LED YAKILDI
digitalWrite(altinci_led, HIGH); // DÝJÝTAL 6 PÝNÝNDEKÝ LED YAKILDI
}
void kesme2()
{
digitalWrite(dorduncu_led, LOW); // DÝJÝTAL 4 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(besinci_led, LOW); // DÝJÝTAL 5 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
digitalWrite(altinci_led, LOW); // DÝJÝTAL 6 PÝNÝNDEKÝ LED SÖNDÜRÜLDÜ
}