Управление люстрой RCSwitch (описание библиотеки)
- Войдите на сайт для отправки комментариев
Добрый день!
Интересует как работать с данной библиотекой, может какое описание команд есть , на русском желательно.... По инету порылся, есть примеры но своего случая так и не нашел...
Мысль такая, внести в свою китайскую люстру разнообразия... С люстрой пульт идет 6 кнопочный на три канала, вот думал увеличить функциональность с помощью ардуино, ШИМ например для регулировки яркости, возможность управления количеством включенных лам, анимация общего включения.... Но, все застопорилось из за отсутствия знаний а набраться их не где... Есть инфа по IR пульту но это не то....
Все что удалось это вот, в качестве теста:
#include <RCSwitch.h>
int led1 = 9;
int led2 = 12;
int led3 = 11;
RCSwitch mySwitch = RCSwitch();
void setup() {
Serial.begin(9600);
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
digitalWrite(led1,HIGH);
mySwitch.enableReceive(0); // Receiver on inerrupt 0 => that is pin #2
}
void loop() {
if (mySwitch.available())
{
int value = mySwitch.getReceivedValue();
switch (value)
{
case 4051136:
digitalWrite(led1, HIGH); // turn the LED on
Serial.println("led1 ON ");
break;
case 4050992:
digitalWrite(led2, HIGH); // turn the LED on
Serial.println("led2 ON ");
break;
case 4050956:
digitalWrite(led3, HIGH); // turn the LED on
Serial.println("led3 ON ");
break;
case 4050959:
digitalWrite(led1, HIGH);
digitalWrite(led2, HIGH);
digitalWrite(led3, HIGH);
Serial.println("led ON ALL");
break;
case 4050947:
digitalWrite(led2, LOW); // turn the LED on
Serial.println("led2 OFF ");
break;
case 4051139:
digitalWrite(led1, LOW);
digitalWrite(led2, LOW);
digitalWrite(led3, LOW);
Serial.println("led OFF ALL ");
break;
}
mySwitch.resetAvailable();
}
}
Столкнуля еще с одной проблемой, как на одну кнопку назначить несколько функций, хотя бы вкл/выкл
Если кто просвятит или покажет куда идти, буду благодарен....
а можно ей еще колеса прикрутить и что бы она ездила по потолку...
а можно ей еще колеса прикрутить и что бы она ездила по потолку...
А по теме есть что сказать?
Столкнуля еще с одной проблемой, как на одну кнопку назначить несколько функций, хотя бы вкл/выкл
Если кто просвятит или покажет куда идти, буду благодарен....
Идти нужно в сторону изучения основ программирования
Запоминаете в переменную предыдущее состояние и меняете его каждый раз, когда прилетает код.
Можно еще мерить, сколько раз код прилетит за период (например 2 секунды), уменьшать/увеличивать ШИМ (будет работать при нажатой более 2 сек коавиши)
Можно двойной клик как на мышке обрабатывать и даже сигналы азбуки морзе :)
Ну так то да, изучить програмирование, закончить институт.... это все конечно хорошо, но тогда я бы сюда и не зашел даже.... если бы я все знал смысл что то спрашивать. Вообще я думал сдесь помогают в решении, кусок кода с объяснением или ссылки полезные какие. Но пока вижу какие то усмешки непонятные...
Что можно мерить, периоды и прочее это я читал.... но практических примеров так и не нашел...
Но пока вижу какие то усмешки непонятные...
Сами виноваты: Вы бы еще профессором назвались, а потом стали спрашивать советов по элементарным вещам... :)
Про то, что "здесь подсказывают" - не надо питать иллюзий: никто Вам здесь ничего не должен, хотите получить совет - значит спрашивайте так, чтобы люди хотели Вам отвечать.
Tehnik, вы спрашиваете, как работать с библиотекой, и сами же приводите пример работы с ней. у вас проблемы не с библиотекой, а с основами программирования.
Возможно повторюсь, но если бы я все знал(включая основы програмирования) я бы ни чего не спрашивал....об этом сказано в первом моем сообщении...
То что здесь "ни кто ни чего не подскажет" это уже понятно.... Интересно, а что я не так спросил?? И при чем тут кто что должен....ни кого не принуждаю.... Но писать не по теме это лучше вообще не писать.... Я вообще не понимаю такого, есть что подсказать подскажи, а если сам ни чего не понимаешь, то промолчи...
Пример я привожу не мой, это с какого то сайта...
Здесь же вроде как люди со знаниями собрались....
Здесь же вроде как люди со знаниями собрались....
Вопросы типа "научите меня программировать" или "напишите мне программу" нигде не прокатят.
Начните программировать и правильные вопросы задавать ;)
Небольшое отсупление:
Tehnik, на обиженных воду возят. вы взялись за серьезное дело, не зная основ.
представьте себе диалог:
- мужики, я тут грузовик прикупил, подскажите, как перегной на дачу себе привезти
- а права-то у тебя есть? водить умеешь?
- нет конечно, я новичок, были бы права - не спрашивал бы
примеры хоть почитайте, хотя бы минимум освойте, а то вдруг кто-нибудь напишет вам скетч от начала до конца, а вы даже разобраться в нем не сможете
и снова пустые слова....
ни кого не просил учить....
и мне не нужен скетч от начала до конца, пример скетча я приложил, и задал вопрос..... Если у вас знаний как у меня....зачем воду лить...
Здесь же вроде как люди со знаниями собрались....
Вопросы типа "научите меня программировать" или "напишите мне программу" нигде не прокатят.
Начните программировать и правильные вопросы задавать ;)
Небольшое отсупление:
Вообще, это первый форум на котором такая реакция.... Бред какой то....
все застопорилось из за отсутствия знаний а набраться их не где...
не в коня корм
Хорошо, как закрть тему?
Мне уже помогли на форуме по C++ при чем на следующий же день....пока вы здесь пустословили....бред...
зачем закрывать? пусть остается как пример того ,как не надо задавать вопросы
зачем закрывать? пусть остается как пример того ,как не надо задавать вопросы
Если вы не в состоянии понять вопроса, чтож сочувствую, не значит что все такие. Я обращался к действительно шаряшим людям, а не к паре делетантов которые пытаются повысить свою самооценку отпуская бессмысленые выражения...
Вообще, это первый форум на котором такая реакция.... Бред какой то....
Привыкайте: интернет - он не весь состоит из хомячков, кое-где еще есть некий порог вхождения в сообщество...
Dmitry OSIPOV
// Для режима on/off
// Знак "!" означает противоположное значение.
// Записываем в led1 "digitalWrite(led1", противоположное значение led1 "!digitalRead(led1".
// То бишь, если led1 был в LOW он станет HIGH а если led1 был в HIGH, он станет LOW.
// Для защиты от случайных переключений, делаем паузу delay(200).
case 4051136:
digitalWrite(led1, !digitalRead(led1));
delay(200);
break;
! (логическое отрицание)
на клавиатуре восклицательный знак
там где цифра 1, только с удержанием shift
https://www.youtube.com/channel/UC7aH7HVqDvwB1xNHfSl-fDw
Люди подскажите, а как команду пульта люстры сохранить в епром,а потом по нажатию кнопки из епром возпроизвести?
Всем привет! Зарегистрировался специально чтобы спросить на эту тему.
Есть у меня блок с релюхами от китайской люстры без пульта, хочу примонстрячить его в огород и включать свет то там то тут :) (полушутка). Пришёл мне модуль для ардуины RF 433МГц. (две приблудки одна другой вещает). Собрал, проверил, буковку передаёт.
А теперь вопрос: Господа, подскажите как подобрать/узнать коды которые отправлял отсутствующий пульт?
Ну, подобрать в принципе возможно...
Собираете стенд, который сначала отправляет очередной код, а потом (например, фотодатчиком) смотрит, включился ли свет.
Если одно измерение будет занимать 1 секукнду и Вам повезет, и код будет 32-разрядным, то через 136 лет при отсутствии сбоев Вы сможете получить список используемых кодов.
Ой молодец! Такой остроумный шалобол.
А теперь вопрос: Господа, подскажите как подобрать/узнать коды которые отправлял отсутствующий пульт?
Без наличия пульта никак, andriano всё правильно сказал - только брутфорсом. Второй вариант - найти аналогичный пульт и считать с него коды.
Привет. Спасибо, что хоть ты без стёба говоришь. В целом я понимаю что перебирать можно, но это капец как долго. Я думал может есть у кого опыт? Библиотеки может какие есть? Или какой то список команд. А может кто уже считывал и знает хотя бы примерно как эти команды выглядят.
Сейчас бьюсь не могу врубиться как передавать int через vw_send. Оно принмает только свой формат, это так не приятно.
Собрал, проверил, буковку передаёт.
Привет! Блин, а подскажи по каким картинкам собирал? 3-й день долблюсь с этой приблудой, никак не могу уловить чертовы сигналы с пульта от люстры)))
Я, конечно, не настаиваю, пытаюсь разобраться... ))) мне б хотя б проверить вообще приемник живой или нет