Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ATmega AVR
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/28: Рейтинг темы: голосов - 28, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
1

DS1307. Наброски алгоритмов

01.01.2017, 16:06. Показов 5785. Ответов 30
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В текущем проекте нужен отсчет и контроль времени и временных интервалов. Использую DS1307. Так как у RTC есть выход секундных интервалов, то есть два варианта:
1 - Периодический опроса выхода SQ RTC.
Программа работает так: Если первое включение устройства, то инициализация значений EEPROM, инициализация RTC и принудительное задание времени. Скажем: 06.30.00. После инициализации устройства при первом включении и при последующие включения устройства, считывание времени в структуру hours, minutes, seconds. Модуль часов опрашивает выход RTC и при лог. 0 инкрементирует seconds. Если секунд больше 59, инкремент минут, если минут больше 59, инкремент часов.
2 - Прямой опрос RTC.

Вопрос, за и против перечисленных вариантов (исходя из вашего опыта). Если первый вариант, с какой периодичностью опрашивать RTC для сверки времени.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.01.2017, 16:06
Ответы с готовыми решениями:

Наброски
Здравствуйте уважаемые форумчане! Мне дали тему программы "Электронный журнал педагога на основе...

Парсер(наброски)
Доброго времени суток, помогите мне написать парсер с регулярной формулой r.Expression...

Есть наброски программы, но не работает
Нужно сделать цикл классическим способом (с помощью операторов IF и GOTO): Дано натуральное число...

QR разложение (есть свои наброски)
Приветствую! Пытаюсь реализовать данный алгоритм по этой схеме. Вот мой код: // QR.cpp:...

30
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 155
01.01.2017, 16:24 2
Опрашивать при смене лог уровня на RTC.
0
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
01.01.2017, 17:32 3
Ни хрена не понял , но интересно. А у тебя что либо с будильником на борту есть? Например DS1337 и выше
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
01.01.2017, 17:39 4
Не будильники.
Режим 1 - задержка в часах, минутах. По истечении времени выполняются действия.
Режим 2 - скажем 24 значения. Часы, минуты. Когда наступает заданное время, выполняются действия.
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
01.01.2017, 18:20 5
Установка времени. Как лучше сделать?
Наброски:
При инициализации копируем текущее время во временные переменные. Потом сравниваем секунды, если не равно, обновляем, показываем. При редактировании вылез косяк. Временные переменные обновляются текущим временем.
Варианты:
1 - как только изменили любое значение, с этого момента будет показываться только задаваемое время.
Плюс - если нажали отмену, текущее время не меняется.
Минус - после изменения любого значения текущее время не отображается, отображается задаваемое время.
2 - при изменении значений, тут же записывать в RTC.
Плюс - нет лишних заморочек.
Минус - если уже изменил время, нет отмены.
0
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
01.01.2017, 21:25 6
Цитата Сообщение от dymyurk1978
Не будильники.
Режим 1 - задержка в часах, минутах. По истечении времени выполняются действия.
Режим 2 - скажем 24 значения. Часы, минуты. Когда наступает заданное время, выполняются действия.
А будильники это не задержка времени в часах и в минутах ?
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
01.01.2017, 21:55 7
Цитата Сообщение от YTYOUT
А будильники это не задержка времени в часах и в минутах ?
Давай разберемся с термином "будильник". Это опция RTC или девайса? По сути как бы да. Будильник. Но у RTC их может быть, скажем 10. А мне нужно, к примеру, 24. Притом, за определенное время до срабатывания должно быть предупреждение.
0
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
01.01.2017, 22:00 8
В 1307 нет аппаратных будильников.
Я ее настраивал на прерывание в 1Гц, по нему читал значение и использовал.
0
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
02.01.2017, 05:52 9
Цитата Сообщение от dymyurk1978
Цитата Сообщение от YTYOUT
А будильники это не задержка времени в часах и в минутах ?
Давай разберемся с термином "будильник". Это опция RTC или девайса? По сути как бы да. Будильник. Но у RTC их может быть, скажем 10. А мне нужно, к примеру, 24. Притом, за определенное время до срабатывания должно быть предупреждение.
У тебя все действия идут параллельно или последовательно? Что мешает 24 раза перенастроить будильник. а в предложенной мной их цельных два
В 1307 нет аппаратных будильников.
Это обсуждалось выше
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
02.01.2017, 11:46 10
Цитата Сообщение от YTYOUT
У тебя все действия идут параллельно или последовательно?
Последовательно. Грубо говоря, что-то вроде диспетчера действий. Пусть 24 значения времени. Время совпало - действия. Закончились, ждем следующего значения.
0
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
02.01.2017, 13:02 11
Ну , 24 раза возникнет прерывание будильника RTC, а у тебя просто счётчик .
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
02.01.2017, 13:11 12
Цитата Сообщение от YTYOUT
Ну , 24 раза возникнет прерывание будильника RTC, а у тебя просто счётчик .
Каждое временное значение нужно видеть на дисплее. За определенное время до совпадения должно быть предупреждение.
0
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
02.01.2017, 15:02 13
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
02.01.2017, 15:07 14
Цитата Сообщение от itysiy
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
Аналогично.
0
0 / 0 / 0
Регистрация: 22.08.2009
Сообщений: 525
02.01.2017, 17:16 15
Цитата Сообщение от itysiy
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
А чем такие, например, не нравятся?
http://www.st.com/content/ccc/... 002302.pdf
0
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
02.01.2017, 17:58 16
Цитата Сообщение от Bytt
Цитата Сообщение от itysiy
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
А чем такие, например, не нравятся?
...
А чем реализация будильника на этом чипе будет лучше для ТС, чем реализация будильника на МК?
0
0 / 0 / 0
Регистрация: 12.07.2011
Сообщений: 2
02.01.2017, 19:52 17
Если отображения времени не нужно, то можно уйти в глубокую спячку и просыпаться только по будильнику.
Хотя первую страницу не читал и что нужно ТС не знаю))))
0
0 / 0 / 0
Регистрация: 02.10.2012
Сообщений: 1,946
02.01.2017, 19:57 18
Цитата Сообщение от itysiy
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
За зачем тогда RTC , если часы элементарно делаются на любом МК.
0
0 / 0 / 0
Регистрация: 06.12.2016
Сообщений: 3,044
02.01.2017, 20:07 19
Цитата Сообщение от YTYOUT
зачем тогда RTC , если часы элементарно делаются на любом МК.
Точности не будет. И не хочу лишних заморочек. Есть ртс пусть и выполняют свою задачу.
0
1 / 1 / 0
Регистрация: 18.01.2012
Сообщений: 1,418
02.01.2017, 21:37 20
Цитата Сообщение от YTYOUT
Цитата Сообщение от itysiy
Не вижу смысла переносить будильники в чип RTC, когда они элементарно и более гибко делаются на МК.
За зачем тогда RTC , если часы элементарно делаются на любом МК.
А я не говорил про часы, я говорил именно про функциональность будильников. Тем более dymyurk1978у нужны специфичные фичи.
А если часы делать на МК, то придется заморачиваться со спячкой. А АВР не лучший контроллер для этого. А отсюда следует больше времени на кодирование и чаще менять батарейку.
0
02.01.2017, 21:37
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.01.2017, 21:37
Помогаю со студенческими работами здесь

Нужно составить матрицу! Есть наброски!
Ввести матрицу чисел размерности 3x3. Заменить элементы главной диагонали матрицы на значение...

Как запрограммировать функцию (есть наброски)?
На вход подается массив элементов Xi из файла. нужно посчитать g(u)=\frac{1}{n} * \sum_{1}^{n} ...

Проерка на правильность ввода. Наброски есть.
найти периметр квадрата, стороны которого параллельны осям координат, а противоположные вершины...

Строковый тип данных.Вот наброски.
Дана строка. Словом текста является последовательность букв русского алфавита; между соседними...

доделать программу наброски кода есть Массивы
Задание: задан массив М*Н. Вывести в одномерный массив столбец массива в котором наибольшее...

Нужны наброски, как начать программу с масивами.
Получить вектор В элементы которого равны элементам главной матрицы А и найти его максимальный...

Сумма ряда и проверка на сходимость (есть наброски)
Задание 1. Найти сумму ряда: Е(n=1 до бескон) n* q^n (^ - в степени). При условии, что |q| < 1,...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru