Arduino ve Butonlar ile Led Kontrolü (3. Örnek) - Robo90 Arduino Dersleri #25

Поделиться
HTML-код
  • Опубликовано: 8 ноя 2022
  • 🔗 İnternet Mağazamız: www.robo90.com/?...
    🚀 Robo90 Arduino Setleri:
    👉Robo90 Arduino Uno İleri Başlangıç Seti: www.robo90.com/arduino-uno-il...
    👉Robo90 Arduino Uno Başlangıç Seti: www.robo90.com/arduino-uno-ba...
    Temel C/C++ eğitiminin sonuna yaklaşırken, şimdiye kaar öğrendiklerimiz ile donanım tabanlı bazı antrenmanlar ile pratik yapmak bizim için çok iyi olacaktır. Bu videodaki gibi basit örnekleri kendi kafanızdan kurgulayıp yazmaya deniyerek antrenman yapmaya devam etmenizi tavsiye ederim.
    🔗 Instagram: / robo90com
    🔗 Arduino Dersleri Oynatma Listesi (Playlist):
    • Neden Bu Arduino Kursu...
    Ledler, Dirençler ve Ohm Yasası: • Ledler, Dirençler ve O...
    Breadboard Üzerine Devre Kurmak: • Breadboard Üzerine Dev...
    Mekanik Switch Kontrolü ve Pull-up Pull-down Dirençleri: • Mekanik Switch Kontrol...
  • НаукаНаука

Комментарии • 20

  •  Год назад +2

    Yeni dersss geldiiii 😇🥰

  • @TevfikBEKTAS
    @TevfikBEKTAS Год назад

    Teşekkürler.

  • @azamiturk40
    @azamiturk40 Год назад

    Teşekkür ederm.

  • @halitbuyukaydin4426
    @halitbuyukaydin4426 Год назад

    hocam butona bastığınızda ledler yandı ve o anda elektrik kesintisi yaşandı, elektrik geldiğinde ledler yanık olacakmı?

  • @abuzittinbeta
    @abuzittinbeta Год назад +1

    :)

  • @fatihkorkmaz9401
    @fatihkorkmaz9401 2 месяца назад

    while döngüsü ile delay eklediğim an sistem çalışmıyor fakat while ile delay satırını silince düzeliyor, seri port ekranından bakınca while döngüsü yazılıyken butonun değeri 0 ken basınca 1 oluyor ve kalıyor, geri 0 a dönmüyor sebebi nedir?

  • @studaint0
    @studaint0 Год назад

    Merak ettiğim şey şu:
    1) if(...){ while(...){...}...} LED YAKMA DURUMLARI
    2) if(...){while(...){...}LED YAKMA DURUMLARI}
    1.durumda butona bastığımız zaman if döngüsünde kaldığımız,
    2.durum ise buton bastıktan sonra stat değerinin değişip if döngüsünün dışında işlem gördüğümüz durumdur.
    1.DURUM
    if (digitalRead(BUTTON) == 1)
    { state = !(state);
    while (digitalRead(BUTTON) == 1){delay(100);}
    digitalWrite(BLUELED, state);digitalWrite(BROWNLED, state); digitalWrite(YELLOWLED, state);digitalWrite(GREENLED, state);
    }
    2.DURUM
    if (digitalRead(BUTTON) == 1){state = !(state);
    while (digitalRead(BUTTON) == 1){delay(100);}
    }
    digitalWrite(BLUELED, state);digitalWrite(BROWNLED, state);digitalWrite(YELLOWLED, state);digitalWrite(GREENLED, state);
    Doğru olan kullanım 2.durum mu yoksa ben yanlış mı düşünüyorum?

  • @multicontt
    @multicontt 11 месяцев назад

    İkisi de aynı kodda çalışıyor;
    int button1 = 8;
    int button2 = 9;
    int led1 = 2;
    int led2 = 3;
    int led3 = 4;
    int led4 = 5;
    int state = 0;
    void setup() {
    pinMode(button1, INPUT);
    pinMode(button2, INPUT);
    pinMode(led1, OUTPUT);
    pinMode(led2, OUTPUT);
    pinMode(led3, OUTPUT);
    pinMode(led4, OUTPUT);
    }
    void loop() {
    if (digitalRead(button1) == 1) {
    digitalWrite(led1, 1);
    digitalWrite(led2, 1);
    digitalWrite(led3, 1);
    digitalWrite(led4, 1);
    }
    else if (digitalRead(button2) == 1) {
    delay(150);
    state = !(state);
    digitalWrite(led1, state);
    digitalWrite(led2, state);
    digitalWrite(led3, state);
    digitalWrite(led4, state);
    }
    else if (state == 0) {
    digitalWrite(led1, 0); /* state 0 iken zaten ledin sönmesi gerektiği için ve if çalışırken alt satırlar umursanmayacağı için bu şekilde gayet sağlıklı olduğunu düşünüyorum*/
    digitalWrite(led2, 0);
    digitalWrite(led3, 0);
    digitalWrite(led4, 0);
    }
    }

  • @tvbox8478
    @tvbox8478 Год назад

    👍

  • @onurody
    @onurody Год назад

    #25 tamamlandı

  • @mehmetemingunergok1613
    @mehmetemingunergok1613 3 месяца назад +1

    state değerine bool desek de aynı şekilde çalışır mı? veya daha verimli olur mu?

    • @mehmetemingunergok1613
      @mehmetemingunergok1613 3 месяца назад +1

      denedim çalıştı. Ayrıca int 2 bayt bool 1 bayt kaplıyor demiştik

  • @bugraalpaydn1783
    @bugraalpaydn1783 Год назад +1

    butonlarımı düzgün bağlasam da butona bastığımda 1 değerini almam gerekirken 0 değeri değişmiyor, 2. bir buton bağladığımda ise 2.butonun değeri sabit 1 oluyor bastığımda ise 0 oluyor yardım eder misiniz gerçekten kafayı yiyeceğim

    • @Robo90com
      @Robo90com  Год назад +1

      Pull up ve pull down dirençleri videosu ile breadboardu izlediniz mi ? Sorun orada gibi görünüyor. Devreyi kodu elime alıp incelemeden o videolarda dediğimden başka birşey diyemem uzaktan.

  • @bugrayucel7567
    @bugrayucel7567 Год назад

    #define led1 8
    #define led2 9
    #define led3 10
    #define but1 2
    #define but2 3
    int deger = 0;
    void setup() {
    // put your setup code here, to run once:
    pinMode(led1, OUTPUT);
    pinMode(led2, OUTPUT);
    pinMode(but1, INPUT);
    pinMode(but2, INPUT);
    pinMode(led3, OUTPUT);
    Serial.begin(9600);
    }
    void loop() {
    // put your main code here, to run repeatedly:
    if(digitalRead(but1)==1){

    do
    { digitalWrite(led1,1);
    digitalWrite(led2,1);
    digitalWrite(led3,1);}


    while(digitalRead(but1)==1);
    {digitalWrite(led1,0);
    digitalWrite(led2,0);
    digitalWrite(led3,0);}
    }
    if(digitalRead(but2)==1)
    {deger=!(deger);
    digitalWrite(led1,deger);
    digitalWrite(led2,deger);
    digitalWrite(led3,deger);
    while(digitalRead(but2)==1)
    delay(100);
    }

    }
    ikisinin aynı anda çalıştığı seneryo için iyi bir örnek olur mu yoksa daha güzel kodlama yapılabilir mi? Tabi bu kişiden kişiye göre değişir ama en azından farklı yolları görmek adına.

  • @nikolatesla1969
    @nikolatesla1969 4 месяца назад

    ben asaıdaki gibi bir kod yazdım ama bread boardda deneme sansım olmadı sizce yazdıgım kod dogrumu
    int i = 4;
    int y = 3;
    #define buton1 8
    #define buton2 8
    #define lamba1 3
    #define lamba2 4
    #define lamba3 5
    #define lamba4 6
    void setup() {
    pinMode(buton1 , INPUT);
    pinMode(buton2 , INPUT);
    pinMode(lamba1 , OUTPUT);
    pinMode(lamba2 , OUTPUT);
    pinMode(lamba3 , OUTPUT);
    pinMode(lamba4 , OUTPUT);
    }
    void loop() {
    if(buton2, HIGH) {
    i++;
    }
    if(i = 5) {
    digitalWrite(y, HIGH);
    y++;
    if ( y = 7 ) {
    y == 7;
    delay(50);
    }
    }
    if(i = 6) {
    i = i - 2;
    }
    if(i = 4){
    digitalWrite(y, LOW);
    y--;
    if(y = 2) {
    y == 2;
    delay(50);

    }
    }
    }

    • @nikolatesla1969
      @nikolatesla1969 4 месяца назад

      yanlıslıkla butonları aynı pine atamısım buton2 nin pini 9 olucak sorry :(

  • @bahadrsar8991
    @bahadrsar8991 3 месяца назад

    #define buton_1 8
    #define buton_2 9
    #define led 2
    int mantik = 0;
    void setup() {
    Serial.begin(9600);
    pinMode(INPUT,8);
    pinMode(INPUT,9);
    pinMode(OUTPUT,2);
    }
    void loop() {
    //buton_1
    if(digitalRead(buton_1)==1){

    if(mantik==1){
    digitalWrite(led,LOW);
    mantik=0;
    delay(250);
    }

    else{
    digitalWrite(led,HIGH);
    mantik=1;
    delay(250);
    }

    }
    //buton_2
    if(digitalRead(buton_2)==1)
    {
    digitalWrite(led,HIGH);
    while(digitalRead(buton_2)){}
    digitalWrite(led,LOW);
    }
    }

  •  Год назад

    int i = 1;
    void setup() {
    Serial.begin(9600);
    pinMode(2, OUTPUT);
    pinMode(3, OUTPUT);
    pinMode(4, OUTPUT);
    pinMode(5, OUTPUT);
    pinMode(8, INPUT);
    pinMode(9, INPUT);
    }
    void loop() {
    if (digitalRead(9) == 1) {
    while (digitalRead(9) == 1) {
    delay(25);
    }
    i++;
    }
    if (i % 2 == 0) {
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    }
    if (i % 2 == 1) {
    digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);

    if (digitalRead(8) == 1) {
    digitalWrite(2, HIGH);
    digitalWrite(3, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    }
    else {
    digitalWrite(2, LOW);
    digitalWrite(3, LOW);
    digitalWrite(4, LOW);
    digitalWrite(5, LOW);
    }
    }
    }