Датчик реального времени с учетом миллисекунд

d0ctor
Offline
Зарегистрирован: 12.02.2019

Доброго времени суток, Господа!

Проектирую устройство, которое непрерывно собирает некоторые жизненные показатели человеческого организма и сохраняет результат на SD карту, для последующего анализа на ПК.

Показатели разные и, к сожалению, точности в 1 секунду для проекта недостаточно! :( А, как я понял, датчики типа DS1302, DS1307 миллисекундами не оперируют.

Вариант с тамером на mills() не подходит, т.к. мне важно учитывать время суток в момент измерений.

Можно, конечно, написать костыль: получать при старте время с датчика реального времени и уже от него вести отчет с помощью mills(), но не уверен, что это правильное решение (я полный новичок пока что).

Подскажите, как лучше реализовать? 

mixail844
Offline
Зарегистрирован: 30.04.2012

вам нужно время суток в миллисекундах на момент измерения ? 

вы можете измерять время суток при помощи DS1302, DS1307 с точностью до секунд  и параллельно при помощи millis() отсчитывать мииллисекунды ,обнолвяя "счетчик миллисекунд в минуте" каждую минуту по сигналу от DS1302 или DS1307

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

d0ctor пишет:

Подскажите, как лучше реализовать? 

Да, как угодно, но для начала взять нормальные часы, а не "DS1302, DS1307".

Например, можно настроить часы, чтобы они дёргали контроллер на переходе секунды. По этому прерыванию запоминать millis. Тогда в любой нужный момент будете иметь время с часов и количество миллисекнуд, прошедших с начала текущей секунды.

arduinec
Offline
Зарегистрирован: 01.09.2015

Похоже ТС что-то типа Холтер-ЭКГ сделать хочет.

d0ctor
Offline
Зарегистрирован: 12.02.2019

arduinec пишет:

Похоже ТС что-то типа Холтер-ЭКГ сделать хочет.


Совершенно верно, только показатели немного другие, их больше (в том числе и сердечная деятельность).
Спасибо, вектор понял!
А какой датчик реального времени посоветуете из нормальных?

sadman41
Offline
Зарегистрирован: 19.10.2016

DS3231 нынче модно использовать.

arduinec
Offline
Зарегистрирован: 01.09.2015

d0ctor пишет:
arduinec пишет:
Похоже ТС что-то типа Холтер-ЭКГ сделать хочет.
Совершенно верно, только показатели немного другие, их больше (в том числе и сердечная деятельность). Спасибо, вектор понял!

ЭКГ на Ардуино несложно получить через модуль AD8232:
описание здесь: https://www.dessy.ru/catalog-pdc428509.html
на Алиэкспресс он стоит существенно дешевле: https://ru.aliexpress.com/item/Ecg-module-AD8232-ecg-measurement-pulse-h...

На SD-карту записывать его показания не пробовал, но думаю особых проблем не возникнет.

Что делать с полученным массивом данных - вот это самый интересный вопрос!

d0ctor
Offline
Зарегистрирован: 12.02.2019

Как что? Обрабатывать на ПК в рамках научно-исследовательской работы!)
Помимо прочего на устройстве будет три кнопки - при нажатии в лог пишется время и событие (введение одного из трёх препаратов).
Затем файл с карточки в комп и строить графики. Приложение на Дельфи (простите ))) ) напишу, будут плавные графики с отметками событий....

anatoli_nik
Offline
Зарегистрирован: 17.01.2019

У таймеров T0 и T1 AtMega328 (она ARDUINO-(nano, uno...)) есть вход асинхронного счета, а у DS3231 (и у DS1307) есть выход 32768Гц, и некоторые поделенные на степень 2 частоты.