Форум программистов, компьютерный форум, киберфорум
Arduino
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/15: Рейтинг темы: голосов - 15, средняя оценка - 4.67
3 / 3 / 0
Регистрация: 03.10.2018
Сообщений: 249

Часы на RTC_DS1302

10.06.2024, 19:51. Показов 6294. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,  11,  5,  4,  3,  2);
#include "iarduino_RTC.h"
const int pinRST = 8;
const int pinCLK = 6;
const int pinDAT = 7;
iarduino_RTC time(RTC_DS1302,pinRST,pinCLK,pinDAT);  // для модуля DS1302 - RST, CLK, DAT
 
void setup()  {
lcd.begin(16, 2);
time.begin();   //    ???????????
}
 
void loop() {
//..........
}
error: 'class iarduino_RTC' has no member named 'begin'
нет такой функции в библиотеке?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
10.06.2024, 19:51
Ответы с готовыми решениями:

нужно сделать аналоговые часы с тремя циферблатами. на разных часы, минуты, секунды.
нужно сделать аналоговые часы с тремя циферблатами. на разных часы, минуты, секунды. немного не получилось убрать след от секундной...

Флеш часы: часы, показывающие указанное время
Привет всем!!!Помогите пожалуйста!!!Как создать флеш часы чтобы они показывали разное указанное время. Весь инет прошарил нигде нет! в...

Сколько минут будут показывать цифровые часы в момент, когда стрелочные часы вновь покажут верное время?
Домашние часы со стрелками и цифровые часы синхронизованно показывают верное время. Ровно в полночь батарейка в часах со стрелками...

10
Модератор
1245 / 676 / 292
Регистрация: 10.11.2019
Сообщений: 1,406
10.06.2024, 20:03
В каталоге библиотеки должен быть файл readme.md и примеры программ в подкаталоге examples.
0
3 / 3 / 0
Регистрация: 03.10.2018
Сообщений: 249
10.06.2024, 20:20  [ТС]
Цитата Сообщение от qbfan Посмотреть сообщение
В каталоге библиотеки должен быть файл readme.md и примеры программ в подкаталоге examples.

Из файла readme.md:
**Подключаем библиотеку.**
#include <iarduino_RTC.h> // Подключаем библиотеку.
**Создаём объект.**
iarduino_RTC ОБЪЕКТ ( НАЗВАНИЕ [, ВЫВОД_RST [, ВЫВОД_CLK [, ВЫВОД_DAT ]]] ); // Создаём объект.
**Инициализация работы RTC модуля.**
Функция begin(); // Инициализация работы RTC модуля.
**Установка времени.**
Функция settime( СЕК [, МИН [, ЧАС [, ДЕНЬ [, МЕС [, ГОД [, ДН ]]]]]] ); // Установка времени.

и в примерах begin(); есть... из разных источников скачивал эту библиотеку, и всегда одно и то же.... settime и другие функции нет ошибки
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
11.06.2024, 09:06
Цитата Сообщение от Belju Посмотреть сообщение
iarduino_RTC time
имя переменой(объекта) поменяй,
time служебное слова
например так
C++
1
iarduino_RTC Mytime(...
0
3 / 3 / 0
Регистрация: 03.10.2018
Сообщений: 249
11.06.2024, 14:36  [ТС]
Цитата Сообщение от ValeryS Посмотреть сообщение
имя переменой(объекта) поменяй,
timeслужебное слова
тоже так подумал, не помогло
C++
1
2
3
arduino_RTC myrtc(RTC_DS1302,pinRST,pinCLK,pinDAT);
.......
myrtc.begin();  //  error: 'class iarduino_RTC' has no member named 'begin'
0
1482 / 496 / 73
Регистрация: 22.09.2023
Сообщений: 1,569
11.06.2024, 15:22
Лучший ответ Сообщение было отмечено Belju как решение

Решение

Вы же подключаете файл iarduino_RTC.h! Что вам мешает открыть его и посмотреть описание класса?

C++
1
2
3
4
5
6
7
    /** Пользовательские функции **/                                                                     //
        #if defined(TwoWire_h) || defined(__ARDUINO_WIRE_IMPLEMENTATION__)                                  //  Если подключена библиотека Wire.h
        bool begin (TwoWire* i=&Wire ){ selI2C->init(i); objClass->begin((iarduino_I2C_Select*)selI2C); gettime(); }    //  Определяем функцию инициализации модуля (Параметр: объект для работы с аппаратной шиной I2C).
        #endif                                                                                              //
        #if defined(iarduino_I2C_Software_h)                                                                //  Если подключена библиотека iarduino_I2C_Software.h
        bool begin (SoftTwoWire* i   ){ selI2C->init(i); objClass->begin((iarduino_I2C_Select*)selI2C); gettime(); }    //  Определяем функцию инициализации модуля (Параметр: объект для работы с программной шиной I2C).
        #endif                                                                                              //
Я ни разу не писал для ардуины, но элементарных знаний хватает чтобы понять, что вам надо либо перед этим заголовочным файлом включить файл соответствующей реализации I2C (TwoWire.h или iarduino_I2C_Software.h), либо где-то в оболочке выбрать какую-то галочку, которая определит __ARDUINO_WIRE_IMPLEMENTATION__.

qbfan писал же, что в комплекте идут примеры. Почему вы не открыли их? Хотя бы в текстовом редакторе. Это же так просто...
C++
1
2
3
                                                            //
#include <Wire.h>                                           // Если используется аппаратная шина I2C, то подключаем библиотеку Wire, до подключения библиотеки iarduino_RTC.
#include <iarduino_RTC.h>                                   // Подключаем библиотеку iarduino_RTC для работы с модулями реального времени.
C++
1
2
3
4
5
6
                                                               //
#include <iarduino_I2C_Software.h>                             // Подключаем библиотеку для работы с программной шиной I2C, до подключения библиотеки iarduino_RTC.
SoftTwoWire sWire(3,4);                                        // Создаём объект программной шины I2C указав выводы которым будет назначена роль линий: SDA, SCL.
                                                               //
#include <iarduino_RTC.h>                                      // Подключаем библиотеку iarduino_RTC для работы с модулями реального времени.
//   iarduino_RTC watch(RTC_DS1302, 2, 3, 4);                  // Объявляем объект watch для работы с RTC модулем на базе чипа DS1302, указывая выводы Arduino
1
3 / 3 / 0
Регистрация: 03.10.2018
Сообщений: 249
11.06.2024, 15:59  [ТС]
Dushevny, куча примеров где ничего выбирать не надо, например скетч с выводом в монитор порта:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iarduino_RTC.h >               
iarduino_RTC time(RTC_DS1302, 6, 8, 7);  
void setup() {
  delay(300);          
  Serial.begin(9600);  
  time.begin();        
  time.settime(0, 15, 12, 20, 11, 21, 7);  
}
void loop() {
  if (millis() % 1000 == 0) {                         
    Serial.println(time.gettime("d-m-Y, H:i:s, D"));  
    delay(1);                                         
  }
}
ссылка https://radio-hobby.org/module... rduino_RTC

и здесь у меня такая же ошибка, единственная, error: 'class iarduino_RTC' has no member named 'begin'

Добавлено через 20 минут
Dushevny, но вы оказались правы, так все работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <Wire.h>  
#include <LiquidCrystal.h>
LiquidCrystal lcd(12,  11,  5,  4,  3,  2);
#include "iarduino_RTC.h"
const int pinRST = 8;
const int pinCLK = 6;
const int pinDAT = 7;
iarduino_RTC myrtc(RTC_DS1302,pinRST,pinCLK,pinDAT); 
 
void setup()  {
lcd.begin(16, 2);
myrtc.begin(&Wire);
myrtc.settime(0,44,16,5,6,2024,4);
}
Спасибо!!
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
11.06.2024, 16:14
Цитата Сообщение от Belju Посмотреть сообщение
time.begin();
скачал библиотеку iarduino_RTC версия 2.0.6
вот её h файл (выдержки)
C++
1
2
3
4
5
#if defined(TwoWire_h) || defined(__ARDUINO_WIRE_IMPLEMENTATION__)                                  //  Если подключена библиотека Wire.h
        bool begin (TwoWire* i=&Wire ){ selI2C->init(i); objClass->begin((iarduino_I2C_Select*)selI2C); gettime(); }    //  Определяем функцию инициализации модуля (Параметр: объект для работы с аппаратной шиной I2C).
        #endif                                                                                              //
        #if defined(iarduino_I2C_Software_h)                                                                //  Если подключена библиотека iarduino_I2C_Software.h
        bool begin (SoftTwoWire* i   )
как видно для вызова begin без аргументов(аргументы по умолчанию) нужно подключить "библиотеку"TwoWire. перед iarduino_RTC.h
#if defined(TwoWire_h) || defined(__ARDUINO_WIRE_IMPLEMENTATION__)
0
3 / 3 / 0
Регистрация: 03.10.2018
Сообщений: 249
11.06.2024, 16:17  [ТС]
ValeryS, спасибо... как на моем последнем примере тоже все работает
0
Модератор
Эксперт по электронике
8981 / 6748 / 921
Регистрация: 14.02.2011
Сообщений: 23,871
11.06.2024, 16:34
Цитата Сообщение от Belju Посмотреть сообщение
Dushevny, куча примеров где ничего выбирать не надо, например скетч с выводом в монитор порта:
из примеров
C++
1
2
#include <Wire.h>                                           // Если используется аппаратная шина I2C, то подключаем библиотеку Wire, до подключения библиотеки iarduino_RTC.
#include <iarduino_RTC.h>
везде изначально подключается Wire.h
0
1482 / 496 / 73
Регистрация: 22.09.2023
Сообщений: 1,569
11.06.2024, 19:26
Цитата Сообщение от Belju Посмотреть сообщение
куча примеров где ничего выбирать не надо
Вы думаете, я код в своем сообщении набирал из головы? Нет, я забил в гугля "iarduino_RTC.h", он выдал ссылку на эту библиотеку, я скачал архив и нашел в нем папку examples. И в ней был ответ на ваш вопрос. Это заняло не более 3 минут.

Может ваша куча примеров от более старой версии библиотеки, в которой аппаратный I2C был прибит гвоздями?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
11.06.2024, 19:26
Помогаю со студенческими работами здесь

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Преобразовать введенное значение в часы и минуты и выводит на экран в виде “часы: минуты”
Здравствуйте, помогите пожалуйста с написанием программы. Написать программу, которая запрашивает у пользователя значение времени в...

Из секунд - часы, минуты и секунды. Из минут - часы, минуты
private void button4_Click(object sender, EventArgs e) { if (textBox3.Text == &quot;&quot;) { ...

Программ, которая переводит часы и минуты в минуты или минуты – в часы и минуты
Составьте программу, которая в зависимости от входных данных переводит часы и минуты в минуты или минуты – в часы и минуты. ЖЕЛАТЕЛЬНО...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Запрет удаления строк ТЧ документа при определенном условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru