Работа с if`ами
- Войдите на сайт для отправки комментариев
Сб, 28/05/2016 - 12:11
Помогите начинающему нубу.
Имеется код:
#include <Time.h> #include <TimeLib.h> #include <Wire.h> #include "DS1307.h" DS1307 clock;//define a object of DS1307 class void setup() { pinMode(13, OUTPUT); Serial.begin(9600); clock.begin(); clock.fillByYMD(2016,5,27);//May 27,2016 clock.fillByHMS(22,30,30);//22:30 30" clock.fillDayOfWeek(SAT);//Friday clock.setTime();//write time to the RTC chip } void loop() int s = second(); if (s > 35) digitalWrite(13, 1); { printTime(); } /*Function: Display time on the serial monitor*/ void printTime() { clock.getTime(); Serial.print(clock.hour, DEC); Serial.print(":"); Serial.print(clock.minute, DEC); Serial.print(":"); Serial.print(clock.second, DEC); Serial.print(" "); Serial.print(clock.month, DEC); Serial.print("/"); Serial.print(clock.dayOfMonth, DEC); Serial.print("/"); Serial.print(clock.year+2000, DEC); Serial.print(" "); Serial.print(clock.dayOfMonth); Serial.print("*"); switch (clock.dayOfWeek)// Friendly printout the weekday { case MON: Serial.print("MON"); break; case TUE: Serial.print("TUE"); break; case WED: Serial.print("WED"); break; case THU: Serial.print("THU"); break; case FRI: Serial.print("FRI"); break; case SAT: Serial.print("SAT"); break; case SUN: Serial.print("SUN"); break; clock.getTime(); } { Serial.println(" "); } }
Собственно, ничего необычного - работает с часами реального времени и отсылает текущее время в консоль. Проблема в чем - нужно при возникновении на секундах значения больше, чем 35, зажечь светодиод, но ругается компилятор - expected initializer before 'int'. Перерыл всё что, можно, не могу понять что ему надо. Как исправить код, чтобы вставился if?
Где фигурные скобки после void loop()?
P.S. Ошибки компилятора нужно указывать полностью, с номером строки на которую ругается.
Где фигурные скобки после void loop()?
P.S. Ошибки компилятора нужно указывать полностью, с номером строки на которую ругается.
Прошу прощения, добавил скобки, теперь код выглядит вот так:
компилятор ругается:
У меня ошибка в ДНК? :-) Как заставить это работать?
Ваш printTime(); не находится в цикле void loop()
Уберите скобку в 21 строке
Сделал, заработало. Благодарю. Видимо, нужно учиться форматировать код.
За нас уже подумали: нажимаем Ctrl + T