скетч 8 канального реле ардуино
- Войдите на сайт для отправки комментариев
Чт, 20/02/2014 - 11:03
Мне необходимо управлять 8-ми релейным модулем с клавиатуры компа. Одной релюхой управлять научился, на остальные толку не хватило, т.к. новичек. У кого найдется скетч?
если бы вы выложили свой существующий работающий скетч со схемой подключения и сформулировали что именно не получается, то дело бы сдвинулось с мертвой точки
#define ledPin 10
bool state = 0;
void setup()
{
Serial.begin(9600);
pinMode (ledPin, OUTPUT);
}
void loop()
{
while(Serial.available())
{
char val = Serial.read();
if (val == '1') state = !state;
if(state)
{
Serial.println("ON");
digitalWrite(ledPin, HIGH);
}
else
{
Serial.println("OFF");
digitalWrite(ledPin, LOW);
}
}
}
с ардуино 5v и GRD подключены к модулю vcc и GRD, с ардуино пин 10 на In1 модуля.
И? Что не получается? Код выше работает.
Почитайте Вставка программного кода в тему/комментарий и отредактируйте код.
код для одного реле, а мне необходимо для восьми, для всего модуля.
Так в чем проблема-то? Пишите, если что то не получается выкладывайте ,спрашивайте.
проблема в том, что подключить весь модуль знаю как, а прописать код не знаю. Для одной релюхи нашел исходник, залил в ардуино, одна работает. Нужен скетч для восьми реле.
Вы должны понимать одну простую вещь - взяв готовый код вы ничему не научитесь...
byte pins[8] = {6,7,8,9,10,11,12,13}; bool states[8] = {0,0,0,0,0,0,0,0}; char nums[] = "12345678"; void setup() { Serial.begin(9600); for(byte i = 0; i < 8; i++) pinMode(pins[i], OUTPUT); } void loop() { if(Serial.available()) { char val = Serial.read(); for(byte i = 0; i < 8; i++) { if(val == nums[i]) { states[i] = !states[i]; digitalWrite(pins[i], states[i]); Serial.print(nums[i]); Serial.println(states[i]?" ON":" OFF"); } } } }Согласен, но сроки поджимают. Изучением займусь по ходу.
Огромное СПАСИБО!!! maksim!!! Все работает как надо. Только немного исправлю, что бы 13 пин не занимать.
Добрый день я как начинающий :) хочу поинтересоваться, я вставил код в ардуино, а как простите управлять то реле?)
Какой код?
byte pins[8] = {6,7,8,9,10,11,12,13}; bool states[8] = {0,0,0,0,0,0,0,0}; char nums[] = "12345678"; void setup() { Serial.begin(9600); for(byte i = 0; i < 8; i++) pinMode(pins[i], OUTPUT); } void loop() { if(Serial.available()) { char val = Serial.read(); for(byte i = 0; i < 8; i++) { if(val == nums[i]) { states[i] = !states[i]; digitalWrite(pins[i], states[i]); Serial.print(nums[i]); Serial.println(states[i]?" ON":" OFF"); } } } }разобрались через терминал гипер, а есть какая нить программа еще? а лучше бы для учета!!! нужно по времени учитывать сколько будет гореть свет!
Конечно есть, вот например, к ней правда еще платформа нужна.
ССпасибо) вот вопрос, установил платформу но как ардуинку он определит?
АТОЛ: Драйвер коммутаторов» и оборудование совместимое с ним.
Поддерживаемое оборудование:
MITEC KE1/KE2
MPOS-Power, производства фирмы POSUA в режиме совместимости с MITEC (Протокол KE)
Вот еще одна
А вот что бы реализовать протокол MPOS-Power или КЕ вам дали ссылку выше, только вы должны понимать, что это будет стоить чуть дешевле, чем купить готовый коммутатор.
Могу, кстати, вам в этом помочь, могу реализовать протоколы MPOS-Power или КЕ за символическую сумму в 10000р.