Помогите разобраться со скетчем, управления светодиодами.

Тема в разделе "Схемотехника, компоненты, модули", создана пользователем Богдан0777, 19 авг 2015.

  1. В общем такая от бодяга, написал я скетч, для того чтоб включать по отдельности два светодиоды и к каждом с них подсоединил кнопку, но тут подвернулась кнопка которая имеет в себе отдельный светодиод и я захотел сменить код таким образом чтоб я мог управлять также двумя диодами кнопок ну и хотелось чтоб третий диод что в кнопке просто мигал с интервалом в секунду. Прописал в скетче третий диод но когда все загрузил то оказалось, что диод тот что в кнопке мигает так и было задумано но практически не реально включить остальние два диода.

    Код (Text):


    int switchPin1 = 8;
    int switchPin2 = 9;
    int ledPin1 = 2;
    int ledPin2 = 3;
    int ledPin3 = 12;
    boolean lastButton1 = LOW;
    boolean lastButton2 = LOW;
    boolean ledOn1 = false;
    boolean ledOn2 = false;


    void setup()
    {
    pinMode(switchPin1, INPUT);
    pinMode(switchPin2, INPUT);
    pinMode(ledPin1, OUTPUT);
    pinMode(ledPin2, OUTPUT);
    pinMode(ledPin3, OUTPUT);
    }

    void loop()
    {
      {
        digitalWrite(ledPin3, HIGH);
        delay(1000);
        digitalWrite(ledPin3, LOW);
        delay(1000);
      }
      if (digitalRead(switchPin1) == HIGH && lastButton1 == LOW)
      {
        ledOn1 = !ledOn1;
        lastButton1 = HIGH;
      }
      else
      {
        lastButton1 = digitalRead(switchPin1);
      }
      digitalWrite(ledPin1, ledOn1);

      if (digitalRead(switchPin2) == HIGH && lastButton2 == LOW)
      {
        ledOn2 = !ledOn2;
        lastButton2 = HIGH;
      }
      else
      {
        lastButton2 = digitalRead(switchPin2);
      }
      digitalWrite(ledPin2, ledOn2);
    }
    Может кто-то подскажет что я сделал не верно...
     
  2. vvr

    vvr Инженерище

    мигать без делеев
    переписать логику работы кнопок
    ввести борьбу с дребезгом контактов кнопок
     
  3. Может, это сейчас глупо прозвучит, но как мигать без "delay"? я не очень давно этой среде программирования, с дребезгом я в принципе разберусь.
     
  4. vvr

    vvr Инженерище

    в IDE в примерах базовых есть blink without delay
     
  5. Хорошо, я посмотрю этот пример. Спасибо за помощь.