Arduino Dersleri 9 : Arduino Temel Eğitim Fonksiyonları Setup, Loop, PinMode, DigitalWrite, Delay
HTML-код
- Опубликовано: 6 янв 2019
- Arduino temel konuları olan setup loop blokları ile pinmode digitalwrite ve delay komutları arduino derleri kapsamında anlatılır.
- - - Robotistan Arduino Setleri - - -
Kanalımıza özel %5 İndirim Kodu : 🛒 SKY0304
Arduino Başlangıç Seti : 🌐 bit.ly/arduinoset1
Arduino Süper Başlangıç Seti : 🌐 bit.ly/arduinoset2
Arduino Proje Seti : 🌐 bit.ly/arduinoset3
- - - Udemy Kursları - -
A’dan Z’ye Arduino Dersleri ile Robotik Kodlama Projeleri Kursu
🌐 bit.ly/robotikkodlama2020
C# Dersleri ile Programlama Temelleri Kursu
🌐 bit.ly/csharpdersleri
--- Star Çelik Atölye Malzemeleri --
E-Ticaret Sayfası : 🌐 bit.ly/strclk1
Instagram Hesabı : 🌐 bit.ly/strclk2
Facebook Sayfası : 🌐 bit.ly/strclk3
Linkedin Hesabı : 🌐 bit.ly/strclk4
RUclips Kanalı : 🌐 bit.ly/strclk5
-- Web Sitesi, Mail ve Sosyal Medya Hesapları --
Web Sitesi : 🌐 www.sendekodyaz.com
Facebook : 🌐 / sendekodyaz
Instagram : 🌐 / sendekodyaz
Twitter : 🌐 / sende_kodyaz
E-Mail : 🌐 info@sendekodyaz.com
Arduino Setup Bloğu
Arduino setup bloğu içerisinde temel ayarlamalara ilişkin komutlar yazılır. Burada örneğin hangi digital pinin giriş hangisinin çıkış olacağına ilişkin ayarlamalar yapılabilir. Setup bloğu içerisinde yazılan arduino komutları yalnızca bir kez çalıştırılır. Dolayısı ile arduino projeleri geliştirirken yalnızca bir kez gerçekleştirilmesi gereken işlemlere ilişkin komutları bu bloğa yazmalısınız.
Örneğin;
pinMode(2,OUTPUT);
komutu ile arduino mikrodenetleyicisinin 2. Digital pinini çıkış yani output olarak kullanacağınızı belirlemiş olursunuz.
Arduino Loop Döngüsü
Arduino uno mikrodenetleyicisinde enerji olduğu sürece çalışmasını istediğiniz komutları bu bloğa yazmalısınız. Bu bloktaki komutlar arduino enerji aldığı sürece çalışacaktır.
Örneğin;
digitalWrite(2,HIGH);
delay(1000);
digitalWrite(2,LOW);
delay(1000);
Bu örnek kod loop bloğu içerisine yazıldığında digital 2. pine enerji verilecek, 1 saniye beklendikten sonra enerji kesilecek, yeniden 1 saniye beklendikten sonra komutlar başa dönecektir. Digital 2. pine 1 led bağladığınızda bu led 1 saniye aralıklarla yanıp sönecektir. Bu durum arduino enerji aldığı sürece teorik olarak sonsuza dek devam edecektir.
Arduino PinMode Komutu
Arduino’nun hangi pininin giriş INPUT, hangi pininin çıkış OUTPUT olarak belirlendiği durumdur. INPUT dışarıdan arduino mikrodenetleyicisine bilgi aktarmak istediğinizde kullanılır. Örneğin; bir sensörden bilgi okumak için, o sensörün bağlandığı pin INPUT olarak belirlenmelidir. Arduino’dan dışarıya enerji verilerek her hangi bir led veya motor gibi aygıtlar kontrol edilmek istendiğinde ise bu bileşenlerin bağlı olduğu pinin OUTPUT olarak belirlenmesi gerekmektedir.
Örneğin;
pinMode(2, INPUT);
pinMode(3,OUTPUT);
Yukarıdaki komutlardan 1. satırda 2 digital pin giriş INPUT olarak ayarlanmıştır. Bu pine bir düğme bağlanarak düğmeye basılma durumu kontrol edilebilir. 2. komut satırında ise 3 digital pin çıkış yani OUTPUT olarak belirlenmiştir. Bu pine bir led bağlanarak çalışması kontrol edilebilir.
Arduino DigitalWrite Komutu
Bu komut digital pinlerin HIGH yada LOW yapılması için kullanılır. HIGH komutu istenilen digital arduino pinine enerji verirken LOW komutu bu enerjiyi keser.
Örneğin;
digitalWrite(2,HIGH);
delay(1000);
digitalWrite(2,LOW);
delay(1000);
Arduino Delay Komutu (Arduino Gecikme İşlemleri)
Komutların yürütülmesi esnasında bir gecikme oluşturulmak istendiğinde Arduino delay komutu kullanılır. Delay komutundan sonra parantez içerisine gecikme süresi yazılır. Bu gecikme süresi milisaniye cinsindendir.
Örneğin;
delay(1500); komutu bir buçuk saniyelik bir gecikme oluşturur.
Sen de kod yaz eğitim platformunda programlama ve robotik kodlamaya dair yeni eğitim videolarında görüşmek üzere.
#arduino #kodlama #programlama #robotik #sendekodyaz
- - - Robotistan Arduino Setleri - - -
- - - Kanalımıza özel %5 İndirim Kodu : 🛒 SKY0304
Arduino Başlangıç Seti: 🌐 bit.ly/arduinoset1
Arduino Süper Başlangıç Seti: 🌐 bit.ly/arduinoset2
Arduino Proje Seti: 🌐 bit.ly/arduinoset3
- - - Udemy Kursları - - -
A’dan Z’ye Arduino Dersleri ile Robotik Kodlama Projeleri Kursu
🌐 bit.ly/robotikkodlama2020
C# Dersleri ile Programlama Temelleri Kursu
🌐 bit.ly/csharpdersleri
teşekkür ederiz, çalışma mantığı sıfırdan başlayan tek video sizinki, harika..
Merhaba. Teşekkür ederim. Eğitimlerden faydalanmanıza sevindim. Iyi çalışmalar diliyorum.
hocam süpersiniz videolarınızın devamını bekliyoruz
Teşekkür ederim. İnşallah düzenli olarak video yüklemeye çalışacağım.
Elinize sağlık hocam :)
Teşekkür ederim...
Hocam ilk defa öğreniyorum şuan o programda yaktım hatta o ledleri sırayla yakabiliyorum kodları kendimce düzenledim. Bu insanlık için küçük ama enim için büyük bir adım. Emeğiniz için tesekkür ederim saolun.
Merhaba. Küçük adımlar büyük mesafeleri aşmanın kilit noktasıdır. Umarım Arduino dersleri eğitimlerim sayesinde arzu ettiğiniz bir seviyeye ulaşırsınız. İyi çalışmalar diliyorum.
Hocam başta belirtmek isterim ki gerçekten emek harcayarak mükemmel bir iş çıkarmışsınız. Bir çırpıda sıkılmadan ve anlayarak bu videoya kadar geldim. Türkçe Öğretmeniyim yani sözel zekaya sahibim. Ben anladıysam herkes anlar. Mesela devre tahtasını sökmeden anlatmış olsaydınız olay ben de orada kopardı. Olumlu anlamda söyleyecek çok şey var ama acizane katkı sağlamak anlamında yapıcı bir eleştiride bulunmak isterim. Mesela bu videonun son kısmındaki uygulamayı anlatarak yapmanızı isterdim, hızlı bir geçiş olmuş. Bilmiyorum belki ilerleyen videolarda öyledir. Tekrar teşekkür eder, başarılar dilerim. Takipteyim.
Teşekkür ederim Zafer Hocam. Videoların ön hazırlık çalışmaları, çekimi ve yüklenmesi gibi süreçler uzun zaman alıyor. Ancak sizler gibi eğitime ve öğrenmeye değer verenlere katkı sağlamak tüm yorgunluğumu alıyor. Sizin gibi bir eğitimcinin eleştiri ve görüşleri benim için çok büyük önem arz ediyor. Bu eğitim videosunda tüm komutları ve devre çizimini anlattım. Tinkercad üzerinden devre şemasını anlattığım için ayrıca fiziksel devre kurulumunu anlatmadım. Yalnızca fiziksel devrenin çalışır halinin videosunu ekledim. Siz de sanırım fiziksel kurulumun elle yapılışını anlatmadığımdan bahsediyorsunuz. Fiziksel kurulum ile tinkercad devresi tamamen aynıdır. Fiziksel kurulumu da anlatsam tabiki çok daha iyi olurdu. Ancak kabloları taktığım pinler ve breadboard detayları dijital kurulumda daha net görünüyor. Biraz da eğitimin uzun olmaması adına böyle bir tercihde bulundum. Bundan sonraki çalışmalarımda görüşlerinizi dikkate alacağım. Tekrardan teşekkür eder. İyi çalışmalar dilerim.
Güzel çalışma olmuş.
Teşekkür ederim. İyi çalışmalar diliyorum.
Çogu arduino serisinde kod ezber verilir siz yazılımınıda anlatıyorsunuz çok iyisiniz hocam 👍🥇👊
Merhaba. Arduino Dersleri eğitim serisinde sıfırdan ileriye doğru hem elektronik hem de programlama bilgilerine yer vermeye çalışıyorum. Eğitimlerden memnuniyet duymanıza sevindim. info@sendekodyaz.com adresine mail atarsanız sizlere Arduino Dersleri konusunda destekleyici bir kaynağa yönlendireceğim.
Tabiki hocam hemen atıyorum
❤❤❤
Setup: Kurmak
Loop : Döngü
void : Atamak
anlamına gelmektedir.
Bazı şeylerin anlamını bilirsek daha iyi anlarız.
Setup ayarlar, Loop döngü demektir ancak void kısmını atamak olarak değerlendiremeyiz. Void ifadesinin ne anlama geldiğini tam olarak kavramak için programlamanın en önemli konularından olan Metotlar isimli konuyu bilmeniz gerekir. Bir metot çağrıldığı yere yani dışarıya her hangi bir değer göndermeyecekse bu metot void ifadesi ile tanımlanır. Burada loop ifadesinin anlam karşılığı döngü olsa da aslında metot ismidir. Metotlar konusuna kadar Arduino oynatma listesini tamamladığınızda anlatmak istediklerimi daha net anlayacaksınız. İyi çalışmalar diliyorum.
Hocam pinMode'yi topluca yazma yöntemi var mı? Mesela int olarak tanımlanacak 2 değişken; int a=5,b=6; gibi bir kısaltma var mı? Varsa çok iyi olur kod kalabalığı çok artıyor. Kart içinde sorun oluyor.
çoğu üniversite hocasından iyi anatyorsunuz bir hocanın 3haftada anatamadığını siz 10 dk anaşılır bir şekilde anatyorsunuz
Merhaba. Çok teşekkür ederim. Eğitimlerden faydalanmanıza sevindim. Sizlerin olumlu görüşleri beni motive ediyor. İyi çalışmalar diliyorum.
hocam peki şöyle yapma şanşımız var mı ? 3 tane led yakacağız bu pinler 3,4,5 bunların hepsini pinMode(3,4,5 OUTPUT) şeklinde
Hocam bu ledler seri bağlı mi paralel bağlı mi oluyor?
selamun aleykum hocam . peki ledleri faklı zamanlarda nasıl çalıştırabiliriz. örnek 1nci ld 10dk yansın 10dk sönsün. 2 led 5dk. yansın 5dk sönsün 3 led 5saniye yansın 5 saniye sönsün. birbirlerinin arkasından değilde birbirlerinden bağımsız olarak çalışmaları mümkünmü
Kullandığınız dirençleri neye göre seçiyorsunuz ?
Eline sağlık sadece şurada şunu söylemenizi beklerdim öyle daha anlaşılır olurdu high komutu 5v verir low komutu 0 volt verir 😀 anlatımınız açık ve net
Teşekkür ederim. Arduino dersleri kapsamındaki anlatımı beğenmenize sevindim. Elimden geldiğince anlaşılır ve detaylı eğitim videoları hazırlamaya çalışıyorum. Evet bazen sizlerin de bahsettiği gibi detayları bir kenara bırakıp basit ifadelerle konuyu vurgulamak faydalı olabilir.
hocam değerli anlatmınız ve çabanız için gerşekten teşekkürler. Benim bir sorum olacaktı. ben bir LED i bağımsız oalrak yakıp söndürmek istiyorum. Yani 4 ve 5. pinler iş yaparken dururken vs. benim bir ledimin sürekli yanı sönmesini istiyorum. Program satır satır okuma yapıyor, bundan bağımsız nasıl yapabilirim.
Merhaba. Teşekkür ederim. Arduino dersleri eğitimlerini beğenmenize sevindim. Arduino ile ilgili kesmeler diye bir konu var. Onun üzerine bir araştırma yapmanızı öneririm.
iyi günler, bu çalışmadaki uygulamayı dikkati şekilde donanım ve yazılımını yazdım too few arguments to function 'void digitalWrite(uint8_t, uint8_t)' hatası almaktayım konu hakkında yardımlarınızı beklerim. iyi çalışmalar.
Hocam videolarınız için teşekkür ederim. acaba kurduğumuz sisteme kaç ohm luk direnç koymamız gerektiğini nasıl hesaplamamız gerekiyor.
Selamlar. Bahsettiğiniz konularda deneyim kazanmak için Temel Elekronik ve Ölçme konularına hakim olmanız gerekiyor. V=IxR şeklindeki ohm kanunu formülümüz sayesinde hangi durumda hangi direnci kullanmamız gerektiğini hesaplayabilirsiniz. Bu konuyu araştırmanızı öneririm.
Hocam öncelikle merhaba. Anlamadığım bişey var. Bu enerji çıkışları hem power 5v üzerinden hemde dijital çıkışlardan numaralı kısımlarda yapılabiliyor. Neye göre seçicez anlamadım
Merhaba Salih Bey. Henüz 10. videoyu izliyorsunuz sanırım. Eğitim serisinin ilerleyen kısımlarında aklınıza gelen bu tür soruların tamamının cevaplarını bulacaksınız.
Hocam öncelikle anlatım için teşekkürler. Ben bu devreyi yaptığımda ledin - ucunu arduino üzerindeki gnd pinine bağladığımda devre çalışıyor ama sizin yaptığınız gibi breadboard üzerindeki - olan yere yani toprak hattına bağladığımda devre çalışmıyor bunun sebebi ne olabilir ?
Merhaba. Breadboardlarda ben de sık sık sorun yaşıyorum. Farklı bir hatta denediniz mi örneğin + hatta toprak bağlayıp deneyebilirsiniz.
@@SendeKodYaz denedim ama olmuyor sadece arduino daki gnd pininde oluyor . Sorun nerede acaba ?
@@SendeKodYaz hocam bugün tekrardan denedim bu sefer oldu teşekkürler
elınıze saglı hocam bnm bır sorunum var plastık kramyer dıslı surmek ıcın bır program olusdurdum
kodlamaya gore ıstedıım sekılde ılerı gerı surebılıyorum fakat guc kesıldıınde yada kapatılıp acıldıgında
dıslı ılerıde kaldıysa baslagıc yapıldıgında yıne ılerı gıderek baslıyor dıslerın kaymasıda buyuk bır sorun teskıl edıyor
tekrar baslaıldıgında kaldıgı yerden devam etmesı yada motorları baslanıc nokasına cekıp bastan baslatmam ıcın ne yapmam gerekıyor yardımcı olursanız cook sevınırım
Merhaba. Arduino mikrodenetleyecisinin kalıcı hafızasını kullanarak önemli bilgileri yazdırabilirsiniz. Örnek olarak bir link atıyorum o konu üzerinde araştırma yaparak sorunu çözersiniz diye düşünüyorum.
www.scribd.com/presentation/222903460/Arduino-E%C4%9Fitimleri-8-Arduino-Kal%C4%B1c%C4%B1-Haf%C4%B1za-Kullan%C4%B1m%C4%B1
@@SendeKodYaz anladım bakacagım sk edrım
hocam bu ledleri tek kablodan (+) getirip ona göre direnç koysak olur mu ? bu sayede tek pin kullanmış oluruz hemde kodlamada kısa olur ( bu arada acemiyim hocam yeni başladım sadece merakımdan sordum olabilirmi diye )
Merhaba. Merak ettiklerinizi her zaman sorabilirsiniz. Eğitimlerde ilerlediktçe zaten birçok sorunun da yanıtını bulmuş olacaksınız. Tek bir dijital pin ile birden fazla LED kontrol edilebilir. Ancak her LED'i ayrı ayrı kontrol etmek istiyorsanız ayrı dijital pinlere bağlamalasınız. info@sendekodyaz.com adresine kısaca kendinizi tanıtarak mail atarsanız sizleri bu eğitimler benzer bir kaynağa yönlendireceğim.
@@SendeKodYaz tamam hocam teşekkürler
iletişim bölümünden mi tanıtacağız kendımızı
Doğrudan info@sendekodyaz.com adresine mail atınız.
çok iyi anlatıyorsunuz kötü anlattığınızı düşündüğüm zamanda ben aptalmışım ki anlamamışım :)
çok teşşekür ederim 2 günde yılan oyunu alkışlı led lamba reklam tabelası yaptım pong atari de var ama çalıntı sjsjsjsjsjsjsjs
Selamlar Sinan Bey. Kodlama öğrenmeye yeni başlıyorsanız anlamakta güçlük çekmeniz çok olağandır. Ayrıca her öğrenci her eğitimciden aynı şekilde faydalanamaz. Eğitimlerden sonradan faydalanmanıza sevindim. İyi çalışmalar diliyorum.
Hocam ben arabada çalıştırmak icin kod lazim role 2 yi 2300 milisaniye çalışacak role kapanacak tekrar açılmayacak komut gönderene kadar bana mars icin lazim bu süre normalde aracın çalışma süresi iki saniye 300 mili saniyede kesmesi lazim yardımcı olurmusunuz tekrar çalışırsa araba çalışır vaziyette mars başarsa mars motoru yanacaktır
o işi arduino iledeğilde zaman gecikmeli küçük bir devre ile de yapabilirsiniz aslında.ne aşamadasınız şuanda istediğiniz işi yapabildiniz mi?
hocam ben aurduinoyu satın aldım ve sıralı bir şekilde(videodaki gibi) yakıp söndürmek istiyorum.Kodu doğru yazdım fakat bağlamasında sıkıntı yaşıyorum. Bu konuda bana yardımcı olursanız sevinirim.(Bu devrede aurduino,direnç,jumper kablo ve ledler dışında bana ne gerekli ayriyetten bu konuda bana yardımcı olursanız sevinirim)
Merhaba. Port seçimi ve kart seçimini Arduino IDE yazılımı menüsünden doğru bir şekilde seçmiş olmanız gerekiyor. Aksi takdirde komutların yüklenmesine hata oluşabilir. Arduino malzeme listesini verdiğim videoyu aşağıdaki linkten izleyiniz, videonun sonlarına doğru malzeme listesi yaptım o malzemeler sizi uzun süre idare edecektir.
ruclips.net/video/yP9wQSXO2yo/видео.html
@@SendeKodYaz Port seçimi ve kart seçimini doğru yaptım koduda yazdım yüklüyor bunda bir problem yok fakat devreyi kurmakta(Tinkercarttaki gibi fakat ben gerçeğinde yapmaya çalışıyorum) onda bir problemim var. Videodaki malzemelerede baktım hemen hemen hepsi bende zaten var.Benim problemim devreyi kurmakta(Tinkercarttaki gibi fakat ben gerçeğinde yapmaya çalışıyorum). İşte gerçeğinde nasıl yapılabilir onu öğrenmek istiyorum.Tinkercartta bir tarafı ledin eksi ucuna diğer tarafı ise breadboard un eksi ucuna bağlanan kablonun adını söyleyebilirseniz sevinirim.
Merhaba hocam. Yapılan hatayı kaydedıp aynısınınyapsın istiyorum ama bır kod bulamadım. Yardımcı olurmusunuz. Teşekkür ederim
Selamlar Burhan Bey. Arduino ile yapmak istediğiniz uygulamayı biraz daha açıklarsanız yorum yapabilirim. İyi çalışmalar diliyorum.
@@SendeKodYaz merhaba hocam. motoru ılerı götürucem sonra sağa donucek ılerlıycek sola falan. Yanı ıstedıgım yere gıturtucem bu yaptırdığım hareketi kaydedecek.
Evet hocam varmıydı bır yolu. Teşekkür ederım
Hocam buton da yaparmısınız
ruclips.net/video/Nmr1QPFlG5g/видео.html
Buton ile LED yakma işlemini Arduino Dersleri oynatma listesinde anlatmıştım. Oynatma listesinde sıfırdan ileriye doğru birçok konuyu anlattım.
ruclips.net/video/Nmr1QPFlG5g/видео.html
süslü parantez in yerine bir tanım yok mu hocam ...
Süslü parantezler bütün programlama dillerinin kod yazımında kullanılır.
Birader emegine saygi duyuyorum gercekten... Ancak;
oylesine aptalca seyler anlatmissin ki resmen sıkıldım ve kapatiyorum suan. Program files klasor yolunu gostermen 42 saniye suruyo.
yanlis anlama bu videoyu izlemek isteyenler belirli bir donanima sahipler zaten. programlama dillerine de az cok hakimler. kilit noktalari anlatman yeterli.