Помогите с таймером
- Войдите на сайт для отправки комментариев
Пт, 26/08/2016 - 20:46
Доброго времени суток всем!
Помогите плиз с кодом.
Нужно: Включить нагрузку (2 реле) в 06:00 и выключить в 24:00, ежедневно.
Где-то ошибка, не пойму где. Сделал на базе примера, аппаратная платформа Teensy 3. Изначально было с использованием функции Alarm, работало, но отказался из-за чувствительности к пропаданию притания. Переделал без нее, и где-то накосячил. Спасибо. Привожу полный код.
#include <TimeLib.h>
#include <TimeAlarms.h>
AlarmId id;
int led = 13;
int rel1 = 27;
int rel2 = 28;
void setup() {
pinMode(led, OUTPUT);
pinMode(rel1, OUTPUT);
pinMode(rel2, OUTPUT);
// set the Time library to use Teensy 3.0's RTC to keep time
setSyncProvider(getTeensy3Time);
setTime(18,10,0,26,8,16); // set time to Saturday 8:29:00am Jan 1 2011
Teensy3Clock.set(now()); // set system time into RTC
Serial.begin(115200);
//while (!Serial); // Wait for Arduino Serial Monitor to open
delay(100);
if (timeStatus()!= timeSet) {
Serial.println("Unable to sync with the RTC");
} else {
Serial.println("RTC has set the system time");
digitalWrite(led, HIGH);
delay(40);
digitalWrite(led, LOW);
}
}
void loop() {
digitalClockDisplay();
Alarm.delay(1000); // wait one second between clock display
}
time_t getTeensy3Time()
{
return Teensy3Clock.get();
}
{
if (hour(t)>=6 && hour(t)<=23)
digitalWrite(Rel1, HIGH); //реле включено
digitalWrite(Rel2, HIGH);
}
// delay(3000); //задержка на 3 секунды
else { //иначе
digitalWrite(Rel1, LOW); //реле выключено
digitalWrite(Rel2, LOW);
}
}
void digitalClockDisplay() {
// digital clock display of the time
Serial.print(" -= ");
Serial.print(hour());
printDigits(minute());
printDigits(second());
Serial.print(" ");
Serial.print(day());
Serial.print(" ");
Serial.print(month());
Serial.print(" ");
Serial.print(year());
Serial.print(" =- ");
Serial.println();
}
void printDigits(int digits) {
Serial.print(":");
if (digits < 10)
Serial.print('0');
Serial.print(digits);
}
Строки 45-55 не являются частью ни одной из функций скетча.
А ещё пропущена фигурная скобка в конце строки 46
Как правильно оформить строки 45-55? Прошу прощения за ламерский вопрос, только начал знаокмство с платформой
Простите, но мне кажется, что знакомство ещё не состоялось.
Если Ваша цель - научиться писать скетчи для Ардуино, то лучше самостоятельно разберитесь с основами построения скетчей, тогда вопрос отпадёт сам собой. Если же единственная задача - включить и выключить нагрузку по часам, то это неинтересно (и Вы не в тот раздел форума написали).
это как пытаться писать стихи делая по две ошибки в каждом слове... и просить помощи.
Тоесть сначала орфография:
для начала - скобки.. на каждую открытую скобку - должна быть закрытая..
включите в ИДЕ сообщения об ошибках и оно вам будет подсказывать что сделали не так (в настройках включается)
Спасибо, попробую)