Официальный сайт компании Arduino по адресу arduino.cc
помогите решить проблему fatal error: TimeHelpers.h: No such file or directory
- Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Чт, 10/03/2016 - 16:18
помогите решить проблему
C:\Users\D\Desktop\sketch_mar10a\sketch_mar10a.ino:15:83: fatal error: TimeHelpers.h: No such file or directory
#include <TimeHelpers.h> //для простого задания таймеров
compilation terminated.
exit status 1
Ошибка компиляции.
где взять эту TimeHelpers.h библиотеку ?
/* ----------------------------Скетч управления нагрузками в зависимости от времени и температуры.----------------------------- //Обратить внмания на условия включения лампы, в некоторых временных вариантах надо менять знаки "и" и "или" местами. Например когда время выключения меньше времени включения. Необходимо унифицировать код !!!! Скоро займусь -------------------------------------------------Настройка:----------------------------------------------------------------- 1. В Arduino IDE заходим в меню ФАЙЛ-НАСТРОЙКИ и ставим галочку показывать нумерацию строк. 2. Проводим настройки в "Блоке настройки устройства" строки 20-40, а именно меняем значения константи на свои. За значением каждой константы после значка " // " разъяснено за что она отвечает. 3. Переходим к строке 95 для первоначальной установки текущего времени ---------------------------------------------------------------------------------------------------------------------------*/ //-------------------------------Подключаем все внешние библиотеки--------------------- #include <Wire.h> #include <LiquidCrystal_I2C.h> //библиотека для LCD по 4 проводам #include <DS1307new.h> //для часов реального времени #include <TimeHelpers.h> //для простого задания таймеров #include <DHT.h> //------------------------------------------------------------------------------------- /*------------------------------------------------Блок настройки устройства--------------------------------------------------*/ //---------------------------------------что к какому пину arduino подключено-------------------- #define Relay1_PIN 3 //пин управления реле вентилятора #define Relay2_PIN 4 //пин управления реле лампой //#define Relay1_PIN 5 //пин управления //#define Relay2_PIN 6 //пин управления //---------------------------------------------------------------------------------------------------------------- //--------------------------константы------------------------------------------------ #define TEMP_INTERVAL _SEC_(5) // таймер опроса датчика температуры #define TIME_INTERVAL _SEC_(1) // таймер опроса времени #define TempFanOff 26 //температура выключения вентилятора #define TempFanOn 28 //температура включения вентилятора #define TimeHHon 9 // Час включения лампы #define TimeHHoff 21 // Час выключения лампы //------------------------------------------------------------------------------------ /*-----------------------------------------------Конец блока настройки пользователя------------------------------------------*/ //------------------------рисуем значок градуса---------------------------------------- uint8_t temp_cel[8] = { B00111, B00101, B00111, B00000, B00000, B00000, B00000 }; //----------------------------------------------------------------------------------- //--------------------------------------для часов--------------------------------------------------------------------- uint16_t startAddr = 0x0000; // Start address to store in the NV-RAM uint16_t lastAddr; // new address for storing in NV-RAM uint16_t TimeIsSet = 0xaa55; // Helper that time must not set again //------------------------------------------------------------------------------------- //-------------------инициализация устройств------------------------------------- DHT dht; LiquidCrystal_I2C lcd(0x27,16,2); // подключаем монитор //------------------------------------------------------------------------------- //--------------------------начальная загрузка--------------------------------- void setup(void) { //запускаем датчик температуры-------------------------------------------- dht.setup(2); // В скобках указываем номер пина, к которому подключен сигнальный провод датчика DHT11 //запускаем монитор lcd.init(); lcd.backlight(); lcd.setCursor(5,0); lcd.print("Hello!"); delay(1000); lcd.setCursor(0,1); lcd.print("Running Sensors"); delay(1000); lcd.clear(); lcd.createChar(1, temp_cel); //выключаем наши реле-------------------- pinMode(Relay1_PIN, OUTPUT); pinMode(Relay2_PIN, OUTPUT); //------установка времени------------------ RTC.setRAM(0, (uint8_t *)&startAddr, sizeof(uint16_t));// Store startAddr in NV-RAM address 0x08 /*--------------------------------------Первоначальная настройка времени---------------------------------- 1. Раскомментируйте строки 103 и 104 для первоначальной установки времени 2. В строках 116 и 117 впишите текущее время в формате год, месяц, число часы, минуты, секунды 3. Вгрузите скетч в arduino 4. Закомментируйте строки 103 и 104 5. Вгрузите скетч в arduino. Ваше устройство настроено. ----------------------------------------------------------------------------------------------------------*/ //TimeIsSet = 0xffff; //RTC.setRAM(54, (uint8_t *)&TimeIsSet, sizeof(uint16_t)); /* Control the clock. Clock will only be set if NV-RAM Address does not contain 0xaa. DS1307 should have a battery backup. */ RTC.getRAM(54, (uint8_t *)&TimeIsSet, sizeof(uint16_t)); if (TimeIsSet != 0xaa55) { RTC.stopClock(); RTC.fillByYMD(2015,11,6); RTC.fillByHMS(11,29,0); RTC.setTime(); TimeIsSet = 0xaa55; RTC.setRAM(54, (uint8_t *)&TimeIsSet, sizeof(uint16_t)); RTC.startClock(); } else { RTC.getTime(); } } //--------------------------основной цикл программы----------------------------------------- void loop(void) { //----------Опрос времени для вывода на экран и включения лампы--------------------------- DO_EVERY( TIME_INTERVAL , takeTime()); //---------------------------------------------------------------------------------------- //----------Опрос датчика температуры и отслеживание реле вентилятора--------------------- DO_EVERY( TEMP_INTERVAL , takeTemp()); //---------------------------------------------------------------------------------------- } //--------------------------------------------------подпрограммы вызываемые многократно ----------------------------- int takeTemp(){ int tempC = dht.getTemperature(); lcd.setCursor(10, 0); lcd.print("t:"); lcd.print(tempC); char temp2[]={'\1', 67, '\0'}; //Отрисовка градусов Цельсия lcd.print(temp2); if ( tempC <= TempFanOff ) digitalWrite(Relay1_PIN, HIGH); //если температуры меньше заданной выключаем реле вентилятора else if ( tempC >= TempFanOn ) digitalWrite(Relay1_PIN, LOW); // если температура поднялась выше заданной включаем реле вентилятора } //----------------------------------------------------------------------------------------- //----------------------------функция отображения времени------------------------------------ int takeTime(){ RTC.getTime(); lcd.setCursor(0, 0); if (RTC.hour < 10) { lcd.print("0"); lcd.print(RTC.hour, DEC); } else { lcd.print(RTC.hour, DEC); } lcd.print(":"); if (RTC.minute < 10) { lcd.print("0"); lcd.print(RTC.minute, DEC); } else { lcd.print(RTC.minute, DEC); } lcd.print(":"); if (RTC.second < 10) { lcd.print("0"); lcd.print(RTC.second, DEC); } else { lcd.print(RTC.second, DEC); } lcd.print(" "); lcd.setCursor(0, 1); if (RTC.day < 10) { lcd.print("0"); lcd.print(RTC.day, DEC); } else { lcd.print(RTC.day, DEC); } lcd.print("-"); if (RTC.month < 10) { lcd.print("0"); lcd.print(RTC.month, DEC); } else { lcd.print(RTC.month, DEC); } lcd.print("-"); lcd.print(RTC.year, DEC); lcd.print(" "); switch (RTC.dow) // Friendly printout the weekday { case 1: lcd.print("MON"); break; case 2: lcd.print("TUE"); break; case 3: lcd.print("WED"); break; case 4: lcd.print("THU"); break; case 5: lcd.print("FRI"); break; case 6: lcd.print("SAT"); break; case 7: lcd.print("SUN"); break; } uint8_t MESZ = RTC.isMEZSummerTime(); if ( RTC.hour >= TimeHHon && RTC.hour < TimeHHoff ) digitalWrite(Relay2_PIN, LOW); //если время больше или равно времени включения или меньше или равно времени выключения , то светим else if ( RTC.hour < TimeHHon || RTC.hour >= TimeHHoff ) digitalWrite(Relay2_PIN, HIGH);// если время меньше времени включения и больше времени выключения не светим } //------------------------------------------------------------------------------------------------ //--------------------------------------------------------------------------------------------------
где взять эту TimeHelpers.h библиотеку ?
В Интернете, вестимо:
https://www.google.ru/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=TimeHelpers.h
Только сразу и TimeHelpers.cpp ищите
так что то ругается говорит что не видет (((( я еще новичек (((