Страница 1 из 3

Внешний генератор

Добавлено: 11 дек 2017, 20:41
thoti3S
Я использую DS3231... и хотел бы использовать частоту которую выдаёт этот модуль 32k.
как организовать по блочно подключение данного вывода к ардуино средствами flprog?
Может быть можно гдето увидеть пример.. спасибо.

Внешний генератор

Добавлено: 11 дек 2017, 21:20
Nikan
.

Внешний генератор

Добавлено: 11 дек 2017, 21:42
thoti3S
Nikan
Спасибо..
Вот так это правильно или нет?

Внешний генератор

Добавлено: 11 дек 2017, 21:51
Nikan
.

Внешний генератор

Добавлено: 11 дек 2017, 22:01
thoti3S
Nikan писал(а):нет на цифровой вход 2
Почему именно 2?
Про мерцание и т.д. это понятно.. я там делитель поставил потом... сейчас меня как полного лопуха интересует сам ФАКТ подключения..
т.е. правильно ли я понимаю?:
1. Создаётся цифровой вход
2. Ставится счётчик.. 
3. Потом уже идет обработка (деление..  умножение сброс и т.д)

Так почему именно 2ой вход?
чем плох 4й? он вроде не аналоговый... или я отъедаю какойто зарезервированный пин?
спасибо...

Внешний генератор

Добавлено: 11 дек 2017, 22:08
Nikan
.

Внешний генератор

Добавлено: 11 дек 2017, 22:11
thoti3S
Nikan писал(а):Второй вход имеет возможность вызывать прерывание в выполняемой программе,
Спасибо большое... Вы мне очень помогли...
Если можно чтобы тут не забивать эфир своими идиотскими вопросами -  я Вам в личку буду задавать вопросы...
Спасибо ещё раз..

Внешний генератор

Добавлено: 11 дек 2017, 22:15
Nikan
.

Внешний генератор

Добавлено: 11 дек 2017, 22:35
thoti3S
Nikan
Чтото не очень выходит...
Связка ардуино-ds3231
Идея  создать на ардуине таймер который засинхронизирован 32к с платы часов... но тупое заведение импульсов с платы часов и запуск их на счётчик даёт корявый результат.. стабильности нет вообще ни какой... получается считает до 10 потом тормозит жутко...

Внешний генератор

Добавлено: 11 дек 2017, 22:49
Nikan
.

Внешний генератор

Добавлено: 12 дек 2017, 00:30
rw6cm
Nikan,
Вы заблуждаетесь.
Счетчик CTU не работает на прерываниях.
По этому нет никакой разницы какой пин будет использоваться.
Следовательно и точность будет плавать в зависимости от такта длительных процессов.
Даже если использовать SCT2 (скоростной счетчик) который работает на прерываниях
мы добьемся стабильного счета, при условии что внутренние процессы позволят опрашивать пин с такой частотой (32к),
что при использовании порта I2C не получится это сделать.
thoti3S,
два примера ниже думаю прояснят это.

Внешний генератор

Добавлено: 12 дек 2017, 01:13
Nikan
.

Внешний генератор

Добавлено: 12 дек 2017, 01:50
rw6cm
Nikan писал(а):если внимательно прочитать, я не где ни указал что счетчик работает в прерывании...
Nikan писал(а):Цитата thoti3S ()Так почему именно 2ой вход?

Второй вход имеет возможность вызывать прерывание в выполняемой программе,
т.е при поступлении сигнала на этот вход, выполнение прораммы остановиться и перейдет на выполнение кода связанного с этим входом.
Такое возможно только при программном изменении алгоритма работы 2 или 3 входа.
В схеме thoti3S, не что это не делает, следовательно разницы нет на каком пине будет вход.
Что и было написано выше.

Внешний генератор

Добавлено: 12 дек 2017, 03:28
Nikan
.

Внешний генератор

Добавлено: 12 дек 2017, 09:20
Sancho
thoti3S
Микросхемы DS323х (кроме DS3231M) могут выдавать на выходе SQW частоты 1, 1024, 4096, 8192 Гц.
Зачем Вам 32768?

Внешний генератор

Добавлено: 12 дек 2017, 09:43
thoti3S
Sancho писал(а):Микросхемы DS323х (кроме DS3231M) могут выдавать на выходе SQW частоты 1, 1024, 4096, 8192 Гц.Зачем Вам 32768?
Ну я не в курсе таких подробностей... а как сделать на выходе SQW 1гц?
В принципе вообще хотелось бы разобраться .. поэтому ковыряю то что могло бы пригодится...
Основная задача(максимум) которую хотелось бы решить это:
часы - засинхронизированный от них таймер который срабатывает по некоему событию... после окончания события таймер останавливается и заносится информация о данном событии в некий журнал дата и время начало и дата и время окончания... 
Спасибо за Ваш ответ...

Внешний генератор

Добавлено: 12 дек 2017, 10:22
Sancho
thoti3S писал(а):Основная задача(максимум) которую хотелось бы решить это:часы - засинхронизированный от них таймер который срабатывает по некоему событию... после окончания события таймер останавливается и заносится информация о данном событии в некий журнал дата и время начало и дата и время окончания...
 Как я понял Вашу идею:
Часы не опрашиваются в основном цикле.
При наступлении события запускается таймер, использующий не внутренние данные ( millisec/microsec), а внешние тактовые импульсы.
Вот тут не понятно - По окончании его(таймера) работы  ИЛИ ПО окончанию события ???
Запускаем получение даты/времени с последующим сохранением ....
Не могу взять в толк - зачем таймер? Можно два раза считать время из RTC начало/конец события и записать куда нибудь. 
Или время начала и длительность...

Внешний генератор

Добавлено: 12 дек 2017, 10:40
thoti3S
Sancho писал(а):Не могу взять в толк - зачем таймер? Можно два раза считать время из RTC начало/конец события и записать куда нибудь. Или время начала и длительность...
Возможно моя логика хромает... и вы более верно формулируете решение...
Попробую описать задумку:
Имеется электрический насос№1... который работает на наполнение некой ёмкости... с ёмкости посредством другого насоса№2 идёт разбор воды потребителями...
Задача:
Определить сколько раз и в какое время происходит включение и отключение насоса№1 с последующим просмотром на экране журнала (время вкл - время выкл) допустим в течении недели...
Задача минимум - общее время работы насоса в течении суток например - решается достаточно просто обычным таймером.... но у таймера который я использую очень всё не хорошо с результатами он то опережает то опаздывает... была идея засинхронизировать этот таймер от термостабильного кварца из ds3231...
Хотя возможно(скорее всего) задача может быть решена иначе...
Спасибо...

Внешний генератор

Добавлено: 12 дек 2017, 10:40
Sancho
Для получения меандра 1 Гц на выходе SQW необходимо:
считать из 3231 регистр(байт) по адресу 0х0Е, сделать побитное И с 0хЕ0 и записать обратно.
Если не планируется никаких "заморочек" с температурой то проще просто записать по указанному адресу 0 - и всё.

Внешний генератор

Добавлено: 12 дек 2017, 10:42
pan
thoti3S писал(а):Ну я не в курсе таких подробностей...
скачиваем даташит и читаем.
 конкретно страница 13.
по умолчанию на этом выходе частота 8192. (что уже проще сосчитать чем 32768)
thoti3S писал(а):как сделать на выходе SQW 1гц?
 считать из часов регистр 0E (номер 14 по нашему) изменить биты 3 и 4 в соответствии с таблицей и своими желаниями и записать обратно.

[spoiler=Спойлер]Изображение[/spoiler]