Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя
Показано с 11 по 20 из 24

Тема: допустимо ли часто перезаписывать переменную в энергонезависимой памяти?

  1. #11
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,113

    По умолчанию

    Не нужно учитывать ,в том то и фишка - в энергонезависимую память они переписываются при ВЫКЛЮЧЕНИИ. Об этом сами разработчики писали где то.Вот такая матчасть ...
    ПС. Я Когда ПР выключаю лампы еще секунд 3-5 светятся ..
    электронщик до мозга костей и не только

  2. #12

    По умолчанию

    Цитата Сообщение от rovki Посмотреть сообщение
    Не нужно учитывать ,в том то и фишка - в энергонезависимую память они переписываются при ВЫКЛЮЧЕНИИ. Об этом сами разработчики писали где то.Вот такая матчасть ...
    ПС. Я Когда ПР выключаю лампы еще секунд 3-5 светятся ..
    Это не пишется где-то! Это ДОЛЖНО быть записано в мануале на ПР200. А этого там НЕТ! Читайте даташит на STM32F103, и обрящете.

  3. #13
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,113

    По умолчанию

    Эта вожможность закладывается на этапе проектирования .И если ПР (любое) работает с сетевыми переменными ,энергонезависимыми ,то на автомате этот механизм закладывается(реализуется) ,это же вам не ардуино .Сетевые переменные сыплются сотнями в секунду и ни кто в здравом уме не будет их писать в энергонезависимую память .Это очевидные вещи, и если об этом не написано ,то попросите разработчиков написать об этом в руководстве ,только не посылайте их читать даташиты ....
    электронщик до мозга костей и не только

  4. #14
    Пользователь
    Регистрация
    21.01.2011
    Адрес
    еБург
    Сообщений
    890

    По умолчанию

    Цитата Сообщение от По самые по... Посмотреть сообщение
    Добавлю еще, для протрезвления:
    Время программирования флеш-пямяти - 52,5мкс (40...70мкс) при 72МГц клока
    Время стирания (а стираться могет только по 2кбайта сразу) - от 20 до 40мс (миллисекунд!!!)
    Если немного подумать, то можно стирать область заранее, например, при включении, а записывать в уже чистые ячейки, в момент выключения.

    PS ну а про запись каждый раз, при изменении, скажу, что по логике работы ПР, любая ячейка перезаписывается (в ОЗУ) при каждом цикле ПР, даже если это значение не меняется.
    т.е. просчёт всей схемы идёт каждый раз, вне зависимости поменялось ли что на входе, или нет.
    И если в лоб писать каждый раз в энергонезависимую ячейку, то она сдохнет в течении дня.
    Последний раз редактировалось AI!; 13.05.2017 в 03:08.
    начинающий профессионал

  5. #15
    Пользователь Аватар для rovki
    Регистрация
    03.01.2010
    Адрес
    Чехов
    Сообщений
    12,113

    По умолчанию

    Цитата Сообщение от AI! Посмотреть сообщение
    Если немного подумать, то можно стирать область заранее, например, при включении, а записывать в уже чистые ячейки, в момент выключения.
    .
    Перед стиранием загрузив значения в ОЗУ.
    электронщик до мозга костей и не только

  6. #16

    По умолчанию

    Совершенно непонятная проблема с этими ретэйн переменными. В древнейших автомагнитолах настройки хранились в копеечной статической КМОП памяти, питаемой или литиевой батарейкой, или ионистором 0,47-0, 56 фарады. Заодно и поддерживающей ход часов.

  7. #17

    По умолчанию

    Цитата Сообщение от Eugene.A Посмотреть сообщение
    Совершенно непонятная проблема с этими ретэйн переменными. В древнейших автомагнитолах настройки хранились в копеечной статической КМОП памяти, питаемой или литиевой батарейкой, или ионистором 0,47-0, 56 фарады. Заодно и поддерживающей ход часов.
    Совершенно верно! Но это там и тогда. А сейчас используется готовый многофункциональный чип - всё в одном! Но подключено от встроенного аккумулятора только 42 шестнадцатиразрядных бэкап-регистров. И всё! Остальное может храниться во флеши, время доступа к которой - мама негорюй!

    Производитель ПР-ов честно пишет:при ошибке чтения переменных RETAIN, обновить пользовательскую программу! Но тихо умалчивается, а почему этот сбой произошел..
    Последний раз редактировалось По самые по...; 13.05.2017 в 10:44.

  8. #18

    По умолчанию

    Цитата Сообщение от По самые по... Посмотреть сообщение
    Добавлю еще, для протрезвления:
    Время программирования флеш-пямяти - 52,5мкс (40...70мкс) при 72МГц клока
    Время стирания (а стираться могет только по 2кбайта сразу) - от 20 до 40мс (миллисекунд!!!)
    Уймись наконец, "умник". Достал ты всех по самые по... 40 мс - это очень малое время. Конденсаторы в блоке питания ПР200 после пропадания питания разряжаются много дольше. Там речь может идти о секундах. За это время все гарантированно запишется во Flash.
    Последний раз редактировалось Вольд; 13.05.2017 в 10:55.

  9. #19

    По умолчанию

    Цитата Сообщение от Вольд Посмотреть сообщение
    Уймись наконец, "умник". Достал ты всех по самые по... 40 мс - это очень малое время. Конденсаторы в блоке питания ПР200 после пропадания питания разряжаются много дольше. Там речь может идти о секундах. За это время все гарантированно запишется во Flash.
    Попробую отдельно для вас, сэр.. . Для того чтобы процессор пОнял, что сеть питания исчезла, должен приходить откуда-то сигнал (с гальванической развязкой, но такой схемы в ПР-х нет!!!), о том, что произошло АВАРИЙНОЕ понижение входной питающей сети. По приходу этого сигнала, в процессоре должно произойти прерывание выполняющейся текущей программы пользователя, и начаться выполнение аварийной подпрограммы сохранения ваших ретейн-переменных во флеш. При этом процессор работает на полную мощь и жрет 66мА тока при 72Мгц клока. Это только процессор столько жрёт! Теперь дальше.. Вскоре вырубается импульсный блок питания и происходит БЫСТРОЕ опорожнение электролитов питания процессора, с 3,3В до 2,8...2,2В. При достижении этого уровня, включается супервизор питания и блок контроля питания, который переключает аккумулятор на запитку часов реального времени и сохронение служебной информации в бекап-регистрах. Флеш в этот период уже не работает, процессор входит в режим стендбай и выключается. Всё.

    Пользоваться энергонезависимыми переменными надо аккуратно. Это должны быть уставки пользователя, редко меняемые во времени.

  10. #20

    По умолчанию

    Цитата Сообщение от По самые по... Посмотреть сообщение
    Для того чтобы процессор пОнял, что сеть питания исчезла, должен приходить откуда-то сигнал (с гальванической развязкой, но такой схемы в ПР-х нет!!!)
    У тебя есть схема ПР200, покажи ее нам, тогда предметно и поговорим ?
    Последний раз редактировалось Вольд; 13.05.2017 в 11:56.

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя

Похожие темы

  1. плк304, размер энергонезависимой памяти
    от EvgenKinchin в разделе ПЛК3хх
    Ответов: 4
    Последнее сообщение: 04.10.2016, 14:31
  2. Ответов: 2
    Последнее сообщение: 07.05.2016, 21:21
  3. Ответов: 2
    Последнее сообщение: 23.06.2011, 14:22
  4. Что допустимо подавать на входы у МДВВ
    от Terrano1992 в разделе ПЛК1хх
    Ответов: 4
    Последнее сообщение: 18.01.2011, 16:48
  5. Ответов: 4
    Последнее сообщение: 15.02.2010, 06:55

Ваши права

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