Реклама на сайте DatasheetsDatasheets

KAZUS.RUN - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Книги и журналы
FAQ по электронике

  Datasheets
Поиск SMD
Онлайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Схемы и проекты
Принципиальные схемы
  Программы
Каталог сайтов
Калькуляторы
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

 
Опции темы

О сохранности данных в памяти МК

Непрочитано 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.RUN
 
Аватар для Арктур
 
Регистрация: 29.10.2012
Сообщений: 2,930
Сказал спасибо: 7
Сказали Спасибо 3,471 раз(а) в 1,771 сообщении(ях)
Арктур на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Есть программные методы снижения износа памяти.
Есть FRAM. Есть микроконтроллеры с FRAM. Ищите.
Арктур вне форума  
Непрочитано 22.05.2013, 13:27  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 19,313
Сказал спасибо: 2,633
Сказали Спасибо 12,076 раз(а) в 6,082 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Сообщение от _Слон_ Посмотреть сообщение
Как правильно подойти к вопросу сохранности данных? Хотя объём данных небольшой, пара сотен байт, но потеря их очень критична.
Дублирование, избыточное кодирование (Хэмминг и пр.) - много вариантов передачи-хранения-восстановления данных. Гугль в помощь.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
Непрочитано 22.05.2013, 13:30  
electroTrash
Прописка
 
Регистрация: 05.01.2013
Сообщений: 195
Сказал спасибо: 11
Сказали Спасибо 24 раз(а) в 21 сообщении(ях)
electroTrash на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Сообщение от _Слон_ Посмотреть сообщение
2. Можно, конечно, периодически сохранять данные в ЕЕПРОМ, но количество циклов записи в нем ограничено, обычно это 100 000. Или нет?
Храните во внешней ЕЕПРОМ, как собственно сделано в большинстве бытовой техники, для уменьшения количества записей, периодически сравнивайте данные ОЗУ с сохраненными в ЕЕПРОМ и при отличие записывайте.
electroTrash вне форума  
Непрочитано 22.05.2013, 15:33  
nahimovv
Заблокирован
 
Регистрация: 25.04.2013
Сообщений: 1,427
Сказал спасибо: 0
Сказали Спасибо 381 раз(а) в 251 сообщении(ях)
nahimovv на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Сообщение от _Слон_ Посмотреть сообщение
Насколько можно доверять ОЗУ МК
А насколько можно доверять вам, что вы выполните все требования по схемотехнике, разводке платы и написанию кода?
Цитата:
не испортятся ли данные при аварийных ситуациях-снижение напряжения питания, электромагнитные наводки и т.п ?
Всё зависит тольео от вас! Как сделаете, так и будет работать.
Если всё так серьёзно, то смотрите в сторону дублирования, CRC и пр., и в сторону STM32F05X. И не забывайте, что ваши "только 100 байт ОЗУ" не самое важное, если всё пойдёт наперекосяк, то толку с ваших 100 байт будет мало.

Последний раз редактировалось nahimovv; 22.05.2013 в 15:36.
nahimovv вне форума  
Непрочитано 22.05.2013, 16:11  
niXto
Почётный гражданин KAZUS.RUN
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Что за устройство и где будет стоять? Это счетчик посещений общественного туалета, или модуль управления левым тормозным двигателем ракеты? Там разный подход и к ОЗУ, и к резервированию по мажоритарному принципу
niXto вне форума  
Непрочитано 22.05.2013, 16:55  
Albert_V
Гражданин KAZUS.RUN
 
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 785
Сказал спасибо: 620
Сказали Спасибо 363 раз(а) в 199 сообщении(ях)
Albert_V на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Сообщение от _Слон_ Посмотреть сообщение
Имеется некое устройство на микроконтроллере. Устройство работает от батарей, работает постоянно. Все данные хранятся в ОЗУ МК..........
.... Можно, конечно, периодически сохранять данные в ЕЕПРОМ......
......Хотя объём данных небольшой, пара сотен байт, но потеря их очень критична.
Странное какое то у Вас изделие, которое за всё время работы от батареек никуда не "сливает" данные, но, при этом, должно их хранить.
А если по делу - никто не заставляет в EEPROM перезаписывать одни и те же адреса. Делайте запись блоками, к примеру, по 256 байт. После записи текущего блока - сотрите следующий блок ("по кругу"). При чтении (после Reset-а или определении "куда писа́ть"), последним блоком будет тот, после которого будет "пустой" блок.
И не мешало бы сделать оцифровку питания. По этой информации можно понять когда "пора сохраниться".

Последний раз редактировалось Albert_V; 22.05.2013 в 17:23.
Albert_V вне форума  
Непрочитано 22.05.2013, 17:36  
_Слон_
Прописка
 
Аватар для _Слон_
 
Регистрация: 25.02.2011
Сообщений: 122
Сказал спасибо: 61
Сказали Спасибо 23 раз(а) в 19 сообщении(ях)
_Слон_ на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Скажем так, это счетчик посещений общественного туалета. Данные с него, конечно, "сливаются", но периодически. Контроль напряжения батарей, естественно, предусмотрен. Но... между двумя сохранениями данных существует какой-то промежуток времени, когда данные изменяются, счётчик-то счтает.
У меня пока что так сделано: данные все время хранятся в ОЗУ. Запись в ЕЕПРОМ происходит по прерыванию при извлечении батарей. Для этого предусмотрен конденсатор большой емкости. При снижении напряжения на батаряех ниже критического - тоже сохраняются. Интересеут надёжность хранения данных в самом ОЗУ. Какие могут существовать факторы, пагубно влияющие на это?
_Слон_ вне форума  
Непрочитано 22.05.2013, 17:44  
Albert_V
Гражданин KAZUS.RUN
 
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 785
Сказал спасибо: 620
Сказали Спасибо 363 раз(а) в 199 сообщении(ях)
Albert_V на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

Сообщение от _Слон_ Посмотреть сообщение
Скажем так, это счетчик посещений общественного туалета......
......Интересеут надёжность хранения данных в самом ОЗУ.
Надёжности хранения данных в самом ОЗУ при "перебросе" питания - никакой. При выходе из Reset Вы должны очистить память (при старте (подачи питания) значение в ОЗУ "не определено")
После INIT-а, восстанавливайте данные из EEPROM.
Цитата:
.....Какие могут существовать факторы, пагубно влияющие на это?....
Ошибки в трассировке платы, ошибки в схемотехнике, ну, и так далее по списку "как не надо делать"....

Последний раз редактировалось Albert_V; 22.05.2013 в 18:51.
Albert_V вне форума  
Непрочитано 22.05.2013, 18:04  
Albert_V
Гражданин KAZUS.RUN
 
Регистрация: 13.04.2012
Адрес: Королёв МО
Сообщений: 785
Сказал спасибо: 620
Сказали Спасибо 363 раз(а) в 199 сообщении(ях)
Albert_V на пути к лучшему
По умолчанию Re: О сохранности данных в памяти МК

_Слон_,
Если это для учёта посещаемости общественного туалета "типа сортир" - скорее всего Вам ещё нужна будет информация о времени...
Можно поставить, к примеру, DS1338 (+56 байт NV RAM) и хранить данные в RTC.....

Последний раз редактировалось Albert_V; 22.05.2013 в 18:14.
Albert_V вне форума  
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Протеус и система зажигания после симуляции не сохраняет настройки cfif11 Proteus 23 04.02.2012 01:26
Поток данных 44Мбит/сек.Нужно снять лог пару секунд. Как? Zemlyanov Микроконтроллеры, АЦП, память и т.д 4 15.11.2010 23:46
А что если...прицепить к МК планку DDR памяти? vchik Микроконтроллеры, АЦП, память и т.д 9 03.06.2008 08:47
Краткий обзор методов помехоустойчивого программирования для Don_Ambrosio Микроконтроллеры, АЦП, память и т.д 0 09.04.2008 01:17
Упаковка данных (сжатие данных) satnettv Proteus, KiCAD и другие ECAD 4 06.09.2007 20:15


Часовой пояс GMT +4, время: 05:48.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.