ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Суббота
6 июля
164416 Топик полностью
koyodza (24.08.2009 11:36, просмотров: 36) ответил Vladimir Ljaschko на Умом понимаю, поскольку уже наелся этих високосных дней. Нужно собирать недельную статистику в циклический буфер в EEPROM. Вот думаю как увязать индекс буфера, его переключение, место хранения (устройство может выключаться), привязку к датам и проч.
а в чем сложность? пишете время события в секундах (если секундное разрешение устраивает), 32 бита дают больше 130 лет. Выбираете "базовое время", например 00:00 1.01.1970 (как в UTC) или 00:00 1.01.2000 - так удобнее, и от него считаете секунды. Если RTC дает в обычном формате - при запуске устройства читаем RTC, переводим в секунды, и дальше МК считаем секунды. Если Вам повезло :=) и Вы выбрали современный МК с RTC в секундах (C8051F41x, STM32) то там просто читаем содержимое счетчика секунд и всё. Далее применяете всяческие коррекции (зимнее/летнее - обсуждалось на днях на телесистемах, коррекция хода часов, и т.д.) Затем это время пишете в архив прямо 32-разрядным числом. Вся дальнейшая работа также производится с секундами, и только перед отображением переводится в удобный человеку формат. Индекс в базе может и не понадобиться, вместо него может использоваться время, но это уже зависит от того, КАК именно организована база Насчет "его переключение" не понял