Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
22.05.2013, 13:04
|
|
Прописка
Регистрация: 25.02.2011
Сообщений: 122
Сказал спасибо: 61
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
|
О сохранности данных в памяти МК
Имеется некое устройство на микроконтроллере. Устройство работает от батарей, работает постоянно. Все данные хранятся в ОЗУ МК. При замене батарей сохраняются в ЕЕПРОМ МК. Тип МК еще уточняется, рассматриваются варианты- AVR, PIC или STM8, но вопрос общего характера и заключается вот чём.
1. Насколько можно доверять ОЗУ МК, не испортятся ли данные при аварийных ситуациях-снижение напряжения питания, электромагнитные наводки и т.п ?
2. Можно, конечно, периодически сохранять данные в ЕЕПРОМ, но количество циклов записи в нем ограничено, обычно это 100 000. Или нет?
Кажется, я где-то в даташитах на ПИКи встречал цифру 1млн...
Как правильно подойти к вопросу сохранности данных? Хотя объём данных небольшой, пара сотен байт, но потеря их очень критична.
|
|
|
|
22.05.2013, 13:10
|
|
Почётный гражданин KAZUS.RU
Регистрация: 29.10.2012
Сообщений: 3,015
Сказал спасибо: 7
Сказали Спасибо 3,494 раз(а) в 1,783 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Есть программные методы снижения износа памяти.
Есть FRAM. Есть микроконтроллеры с FRAM. Ищите.
|
|
|
|
22.05.2013, 13:27
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,091
Сказал спасибо: 2,566
Сказали Спасибо 11,900 раз(а) в 5,973 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Сообщение от _Слон_
|
Как правильно подойти к вопросу сохранности данных? Хотя объём данных небольшой, пара сотен байт, но потеря их очень критична.
|
Дублирование, избыточное кодирование (Хэмминг и пр.) - много вариантов передачи-хранения-восстановления данных. Гугль в помощь.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
22.05.2013, 13:30
|
|
Прописка
Регистрация: 05.01.2013
Сообщений: 201
Сказал спасибо: 12
Сказали Спасибо 29 раз(а) в 24 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Сообщение от _Слон_
|
2. Можно, конечно, периодически сохранять данные в ЕЕПРОМ, но количество циклов записи в нем ограничено, обычно это 100 000. Или нет?
|
Храните во внешней ЕЕПРОМ, как собственно сделано в большинстве бытовой техники, для уменьшения количества записей, периодически сравнивайте данные ОЗУ с сохраненными в ЕЕПРОМ и при отличие записывайте.
|
|
|
|
22.05.2013, 15:33
|
|
Заблокирован
Регистрация: 25.04.2013
Сообщений: 1,431
Сказал спасибо: 0
Сказали Спасибо 385 раз(а) в 254 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Сообщение от _Слон_
|
Насколько можно доверять ОЗУ МК
|
А насколько можно доверять вам, что вы выполните все требования по схемотехнике, разводке платы и написанию кода?
Цитата:
|
не испортятся ли данные при аварийных ситуациях-снижение напряжения питания, электромагнитные наводки и т.п ?
|
Всё зависит тольео от вас! Как сделаете, так и будет работать.
Если всё так серьёзно, то смотрите в сторону дублирования, CRC и пр., и в сторону STM32F05X. И не забывайте, что ваши "только 100 байт ОЗУ" не самое важное, если всё пойдёт наперекосяк, то толку с ваших 100 байт будет мало.
Последний раз редактировалось nahimovv; 22.05.2013 в 15:36.
|
|
|
|
22.05.2013, 16:11
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Что за устройство и где будет стоять? Это счетчик посещений общественного туалета, или модуль управления левым тормозным двигателем ракеты? Там разный подход и к ОЗУ, и к резервированию по мажоритарному принципу
|
|
|
|
22.05.2013, 16:55
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Сообщение от _Слон_
|
Имеется некое устройство на микроконтроллере. Устройство работает от батарей, работает постоянно. Все данные хранятся в ОЗУ МК..........
.... Можно, конечно, периодически сохранять данные в ЕЕПРОМ......
......Хотя объём данных небольшой, пара сотен байт, но потеря их очень критична.
|
Странное какое то у Вас изделие, которое за всё время работы от батареек никуда не "сливает" данные, но, при этом, должно их хранить.
А если по делу - никто не заставляет в EEPROM перезаписывать одни и те же адреса. Делайте запись блоками, к примеру, по 256 байт. После записи текущего блока - сотрите следующий блок ("по кругу"). При чтении (после Reset-а или определении "куда писа́ть"), последним блоком будет тот, после которого будет "пустой" блок.
И не мешало бы сделать оцифровку питания. По этой информации можно понять когда "пора сохраниться".
Последний раз редактировалось Albert_V; 22.05.2013 в 17:23.
|
|
|
|
22.05.2013, 17:36
|
|
Прописка
Регистрация: 25.02.2011
Сообщений: 122
Сказал спасибо: 61
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Скажем так, это счетчик посещений общественного туалета . Данные с него, конечно, "сливаются", но периодически. Контроль напряжения батарей, естественно, предусмотрен. Но... между двумя сохранениями данных существует какой-то промежуток времени, когда данные изменяются, счётчик-то счтает.
У меня пока что так сделано: данные все время хранятся в ОЗУ. Запись в ЕЕПРОМ происходит по прерыванию при извлечении батарей. Для этого предусмотрен конденсатор большой емкости. При снижении напряжения на батаряех ниже критического - тоже сохраняются. Интересеут надёжность хранения данных в самом ОЗУ. Какие могут существовать факторы, пагубно влияющие на это?
|
|
|
|
22.05.2013, 17:44
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: О сохранности данных в памяти МК
Сообщение от _Слон_
|
Скажем так, это счетчик посещений общественного туалета......
......Интересеут надёжность хранения данных в самом ОЗУ.
|
Надёжности хранения данных в самом ОЗУ при "перебросе" питания - никакой. При выходе из Reset Вы должны очистить память (при старте (подачи питания) значение в ОЗУ "не определено")
После INIT-а, восстанавливайте данные из EEPROM.
Цитата:
|
.....Какие могут существовать факторы, пагубно влияющие на это?....
|
Ошибки в трассировке платы, ошибки в схемотехнике, ну, и так далее по списку "как не надо делать"....
Последний раз редактировалось Albert_V; 22.05.2013 в 18:51.
|
|
|
|
22.05.2013, 18:04
|
|
Гражданин KAZUS.RU
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 786
Сказал спасибо: 621
Сказали Спасибо 364 раз(а) в 200 сообщении(ях)
|
Re: О сохранности данных в памяти МК
_Слон_,
Если это для учёта посещаемости общественного туалета "типа сортир" - скорее всего Вам ещё нужна будет информация о времени...
Можно поставить, к примеру, DS1338 (+56 байт NV RAM) и хранить данные в RTC.....
Последний раз редактировалось Albert_V; 22.05.2013 в 18:14.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:50.
|
|