Bu dersimizde düzenli olarak tekrarlayan kodlarý onlarca kez yazmak yerine bir kere yazýp kýsaltmayý öðreneceðiz.
Nasýl yapýlacaðýný örnek bir devre üzerinden açýklayalým.
Senaryo:Birisi yeþil diðeri sarý olmak üzere 2 ledimiz var. Arduinoya enerji verildiði anda yeþil ledin 150 ms aralýklarla 10 defa flip flop yapýp sönmesi isteniyor. Yeþil led flip flop yaparken sarý led sönük kalacak.
Yeþil led 10 defa flip flop yaptýktan sonra da sarý ledin 150 ms aralýklarla 10 defa flip flop yapýp sönmesi isteniyor.
Bu döngü sonsuza dek devam edecektir.
Bu senaryoya ait devre þemamýz þu þekilde:
Bu devreye ve istenen senaryoya ait kodlarýmýz þu þekilde:
/*
* * * * * * * * * * * *
* * * * * * * * * * * *
* * * *
* * TEKRARLAYAN KODLARI * *
* * KISALTMA * *
* * temrinlerim.org * *
* * * *
* * * * * * * * * * * *
* * * * * * * * * * * *
*/
// CIKIS TANIMLAMALARI BURADA BASLADI
int yesil_led = 13; // 13 nolu pine yesil_led adini verdik
int sari_led = 6; // 6 nolu pine sari_led adini verdik
// CIKIS TANIMLAMALARI BURADA BITTI
void setup()
{
pinMode(yesil_led, OUTPUT); // yesil_led isimli pin (13) cikis yapildi
pinMode(sari_led, OUTPUT); // sari_led isimli pin (6) cikis yapildi
}
void loop()
{
for (int yesil_ledi_10_defa_flash_yap = 1; yesil_ledi_10_defa_flash_yap <= 10; yesil_ledi_10_defa_flash_yap ++)
{
digitalWrite(yesil_led, HIGH);
delay(150);
digitalWrite(yesil_led, LOW);
delay(150);
}
for (int sari_ledi_10_defa_flash_yap = 1; sari_ledi_10_defa_flash_yap <= 10; sari_ledi_10_defa_flash_yap ++)
{
digitalWrite(sari_led, HIGH);
delay(150);
digitalWrite(sari_led, LOW);
delay(150);
}
}
Kodlarý inceleyecek olursak yeþil ledin flip flop yapmasýný saðlayan kodlar þunlar:Kodlari sadece uyeler gorebilir. Lutfen Uye Olun ya da Giris Yapin.Bu kod yeþil ledin 1 kere flip flop yapmasýný saðlayacaktýr. Ancak bu kodu;
þu kod ile:
Kodlari sadece uyeler gorebilir. Lutfen Uye Olun ya da Giris Yapin.þu kod
Kodlari sadece uyeler gorebilir. Lutfen Uye Olun ya da Giris Yapin. arasýna yazarsam yeþil led 10 kere flip flop yapacaktýr. Ayný durum sarý led için de söz konusudur.
Kodda kýrmýzý renk ile vurguladýðým
10 sayýsý ledin iki parantez arasýndaki kodlarýn
10 kere çalýþtýktan sonra programýn bir alt satýra geçeceðini ifade eder. Yeþil renkle vurguladýðým
yesil_ledi_10_defa_flash_yap (3 yerde geçiyor) ifadesi yerine baþka bir þey yazabilirsiniz.
Örnekten anlaþýlacaðý üzere onlarca satýr yazmadýðýmýz için program gayet sade oldu. program ilk bakýþta çok daha anlaþýlabilir olacaktýr. Umarým anlatabilmiþimdir.
Bu da söz konusu devreye ait proteus similasyonu:Devreye ait isis ve ide dosyalarý konu ekinde mevcuttur.
Anlatým, kodlama, tasarým, video ve resim temrinlerim.org sitesine aittir. Bu konu kaynak gösterilerek kullanýlabilir.