Что я не так делаю

PioneerCHIK
Offline
Зарегистрирован: 29.11.2016
Не пойму что за трабл такой,написал код где лента горит ярко(все работало)пото написал код где лента горит средне(все работало свет горел тусклее чем HIGH)
потом дописал код тускло и тут понеслось,напряжение перестало меняться как было 4,41 так и остается при любой кнопке управления светом(прописаной в скече)
Где я мог допустить ошибку? 





#include <IRremote.h>
#include <IRremoteInt.h>

int RECV_PIN = 11; //на этот пин подключен приемный IR датчик
int PowerPin = 13; // пин включения-отключения ПК
int LedPin = 8;
IRrecv irrecv(RECV_PIN);

decode_results results;

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Start the receiver

  pinMode(13, OUTPUT ); //  инициализируем наш порт на выход (транзистора)
  pinMode(LedPin, OUTPUT ); // инициализируем наш порт на выход (транзистора)
}
void loop() {
  if (irrecv.decode(&results)) {
    Serial.println(results.value);
    //ниже код включения системника
    if (results.value == 2534850111) { //поменяйте на свой код
      digitalWrite(13, HIGH ); // на базу транзистора через 4.7кОМ
      delay(1000); // задержка горения светодиода на 1 секунду
      digitalWrite(13, LOW );
    }
    irrecv.resume(); // принимаем следующую команду
    //ниже код включения свет ленты на полную
    if (irrecv.decode(&results)) {
      Serial.println(results.value);
    }

    if (results.value == 1153697755) { //поменяйте на свой код
      digitalWrite(8, HIGH ); // на базу транзистора через 1.3 кОМ

    }

    if (results.value == 4198438303) { //поменяйте на свой код
      digitalWrite(8, LOW ); // на базу транзистора через 1.3 кОм

    }
    irrecv.resume(); // принимаем следующую команду
    //ниже код работы свет-лента горит средне
    if (irrecv.decode(&results)) {
      Serial.println(results.value);
    }

    if (results.value == 900285023) { //поменяйте на свой код
      digitalWrite(8, 200 ); // на базу транзистора через 1.3 кОМ

    }

    if (results.value == 4198438303) { //поменяйте на свой код-свет лента выключена
      digitalWrite(8, LOW ); // на базу транзистора через 1.3 кОм

    }
    irrecv.resume(); // принимаем следующую команду
    //ниже код работы свет-лента горит тускло
    if (irrecv.decode(&results)) {
      Serial.println(results.value);
    }

    if (results.value == 713627999) { //поменяйте на свой код
      digitalWrite(8, 70 ); // на базу транзистора через 1.3 кОМ

    }

    if (results.value == 4198438303) { //поменяйте на свой код-свет лента выключена

      digitalWrite(8, LOW ); // на базу транзистора через 1.3 кОм
    }
  }
}

 

PioneerCHIK
Offline
Зарегистрирован: 29.11.2016

Плата UNO, IDE 1.6.13

strarbit
Offline
Зарегистрирован: 12.06.2016

analogWrite()

вместо

digitalWrite()

просто опечатка

PioneerCHIK
Offline
Зарегистрирован: 29.11.2016

Во теперь норм все,

А еще хотел спросить,на всех китайских ардуинках напряжение на пинах не стабильные 5В,ато у еня больше 4.41 не подымается,питание USB

Jeka_M
Jeka_M аватар
Offline
Зарегистрирован: 06.07.2014

При подключении по USB питание идёт напрямую с компа. Замеряй напряжение на USB без подключенной ардуины и сравни.