Что я не так делаю
- Войдите на сайт для отправки комментариев
Втр, 29/11/2016 - 06:57
Не пойму что за трабл такой,написал код где лента горит ярко(все работало)пото написал код где лента горит средне(все работало свет горел тусклее чем 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 кОм
}
}
}
Плата UNO, IDE 1.6.13
analogWrite()
вместо
digitalWrite()
просто опечатка
Во теперь норм все,
А еще хотел спросить,на всех китайских ардуинках напряжение на пинах не стабильные 5В,ато у еня больше 4.41 не подымается,питание USB
При подключении по USB питание идёт напрямую с компа. Замеряй напряжение на USB без подключенной ардуины и сравни.