|
RTC в LPC, Проверка корректности. |
|
|
|
Nov 12 2007, 10:27
|
Бывалый
    
Группа: Свой
Сообщений: 1 584
Регистрация: 7-08-07
Пользователь №: 29 615

|
Цитата(Leen @ Nov 12 2007, 12:30)  Так а что подразумевается под "сбились"? Уход от реального времени вследствие погрешности (постоянной/переменной, скажем, температурный уход частоты) задающего генератора или обнуление из-за сбоя питания? Если обнуление - то запоминать. Тем более, если часы считают годы - если век не соответствует записанному в энергонезависимую память, то точно пропадало питание часов. Ну а если просто уход на +/- полкилометра - то имхо только сравнение с эталоном, а как еще? Ну например. 30 июня при этом это 356 день года.
|
|
|
|
|
Nov 12 2007, 11:10
|
Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343

|
Цитата(alexander55 @ Nov 12 2007, 20:27)  Ну например. 30 июня при этом это 356 день года.  Хм. Ну если для вас сбой - это разница показанийй двух параллельных счетчиков - так это как раз проверить крайне просто. Можно контролировать по таблице длин месяцев (для простоты) - например, есть массив количества дней: в январе, в январе + в феврале (здесь и далее - год не високосный), по март, и т.д. Смотрим, какой месяц сейчас - берем соотв. число дней до этого месяца + кол-во дней из счетчика. Если нынче високосный год и февраль закончился - плюсадиним, сравниваем со счетчиком дней года. Вроде просто. А вот отставание или опережение из-за плохонького китайского часового кварца - это да, это проблема. Нужен эталон (который может быть дороже всего остального - цезиевые часы с термостабилизацией, или какие сейчас самые точные  ), или просто человека заставить иногда поправлять время, ориентируясть на радио Маяк.
|
|
|
|
|
Nov 12 2007, 11:45
|
Частый гость
 
Группа: Свой
Сообщений: 172
Регистрация: 5-08-06
Из: Владивосток
Пользователь №: 19 343

|
Цитата(alexander55 @ Nov 12 2007, 21:38)  Вот и вопрос. Насколько это универсально.  В пределах одного семейства  , если по железу - тут же привязка к конкретной избыточчности. Из-за чего могут рассинхронизироваться два счетчика, тактируемые одним источником (часовым таймером в д.с.)? Да еще и так, чтобы ни один не был нулевым. Мне все же представляется, что такая ситуация - более редкое явление, нежели уход частоты тактов или пропадание питания (ионистор был бракованный  ). Ну только если сильные радиошумы, или радиация.
|
|
|
|
|
Nov 12 2007, 12:55
|
Местный
  
Группа: Свой
Сообщений: 201
Регистрация: 23-01-06
Из: Msk
Пользователь №: 13 490

|
Цитата(alexander55 @ Nov 12 2007, 10:19)  Добрый день ! Вопрос следующий. Каким способом при старте можно проверить, что часы реального времени в LPC не сбились ? Из моего опыта - только проверять валидность (диапазона) данных. Есть там один информационный бит, но при сбое (отключении батарейки) он то "слетал", то нет.
|
|
|
|
|
Nov 12 2007, 13:40
|
Бывалый
    
Группа: Свой
Сообщений: 1 584
Регистрация: 7-08-07
Пользователь №: 29 615

|
Цитата(GetSmart @ Nov 12 2007, 16:29)  какой? 1. Срок изделия допустим 50 лет. Т.е. год в диапозоне 2007-2057. 2. День года должен соответствовать числу. Например: 31 декабря 2008 года - 366 день. Это - то, что на поверхности.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|