#1 2018-01-11 21:59:49

Сашаgold
Учасник
Зареєстрований: 2018-01-11
Повідомлень: 4

Помогите решить проблему!

Делаю рекуператор блок управления андурино уно r3.Нужно чтоб включался два вентилятора поочередно через 60 секунд .Подключаю их через реле.Но реле не срабатывает при выставлении  время 30000 мл.с срабатывает а при 60000 не переключает .Вот Код

int Relay=3;
int Timer=30000; //Секунд умножения 1000

void setup()
{
  pinMode(Relay,OUTPUT);
}

void loop()
{
digitalWrite(Relay,LOW);
delay(Timer);
digitalWrite(Relay,HIGH);
delay(Timer); 
}

Неактивний

#2 2018-01-11 22:04:59

MikeM
Учасник
З Киев
Зареєстрований: 2017-11-03
Повідомлень: 160

Re: Помогите решить проблему!

Максимальное значение, которое может быть сохранено в переменной типа int 32767.
60000 намного больше.

Неактивний

#3 2018-01-11 22:13:12

Сашаgold
Учасник
Зареєстрований: 2018-01-11
Повідомлень: 4

Re: Помогите решить проблему!

Как поставить 60000.

Неактивний

#4 2018-01-11 22:27:50

Сашаgold
Учасник
Зареєстрований: 2018-01-11
Повідомлень: 4

Re: Помогите решить проблему!

Всем спасибо разобрался поменял значение delay(Timer)на delay(60000) и заработало. big_smile
.

Неактивний

#5 2018-01-11 22:54:28

cncserge
Учасник
З Полтава
Зареєстрований: 2018-01-03
Повідомлень: 37

Re: Помогите решить проблему!

Прототип функции --
void delay(unsigned long);

Сделайте переменную "Timer" типа unsigned long
unsigned long Timer = 60000;

Неактивний

#6 2018-01-14 00:23:17

Сашаgold
Учасник
Зареєстрований: 2018-01-11
Повідомлень: 4

Re: Помогите решить проблему!

Спасибо! По роботе код получается тоже самое что я написал выше..

Неактивний

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму