Регистрация | Вход

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Модератор форума: demanik, ivan_fd  
Возможно ли запись данных в флэш память пика?
Doctor Дата: Ср, 26.01.2011, 01:05  |                                                                                                                Сообщение # 1
Группа: Проверенные
Ранг:  Новенький
Сообщений: 14
Репутация: 0   ±
Замечания:   ±
На сайте с 29.01.2010

Статус: Offline

Возможно ли сохранить значение переменной в память, чтобы при отключении питания контроллера данные сохранились?
Я использую PIC18F4550

Добавлено (26.01.2011, 01.05.23)
---------------------------------------------
Вроде как разобрался, я просто не знал что eeprom и флэш-память одно и тоже.
Для этого надо использовать операторы ewrite, eread, edata.

ЯНДЕКС Дата: 26.01.2011
DAlexV Дата: Ср, 26.01.2011, 07:48  |                                                                                                                Сообщение # 2
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Хочу немного растроить.
Quote (Doctor)
я просто не знал что eeprom и флэш-память одно и тоже.
Это не так. EEPROM это как ПЗУ в которое пользователь может использовать для записи/чтения данных. Во Flash память храниться сама программа но если есть место ее то же можно использовать для хранения данных. Разница в режимах записи/чтения. К EEPROM можно обращаться побайтно, а к Flash блоками. Более подробно описано в мануале на процессор.


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Doctor Дата: Ср, 26.01.2011, 14:03  |                                                                                                                Сообщение # 3
Группа: Проверенные
Ранг:  Новенький
Сообщений: 14
Репутация: 0   ±
Замечания:   ±
На сайте с 29.01.2010

Статус: Offline

Ясно, просто в википедии написано, что флэш память это разновидность EEPROM, поэтому я так и решил. Вот хочу уточнить ещё такой момент, во флэш память можно записывать ограниченно, максимально несколько десятков тысяч раз, значит сохранять данные каждую секунду как я хотел не выйдет, а этот самый EEPROM в пике, сколько он поддерживает циклов перезаписи?
MasterPic Дата: Ср, 26.01.2011, 14:53  |                                                                                                                Сообщение # 4
Группа: Проверенные
Ранг:  Могу и подсказать
Сообщений: 186
Репутация: 2   ±
Замечания:   ±
На сайте с 22.11.2008

Статус: Offline

по даташиту не менее 1000000 циклов записи/стирания
DAlexV Дата: Ср, 26.01.2011, 22:08  |                                                                                                                Сообщение # 5
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Quote (Doctor)
значит сохранять данные каждую секунду как я хотел не выйдет
для такой задачи хорошо подойдет практически любая микруха часов реального времени. В них есть свободная RAM память хранящая свои значения до момента отключения ее от резервного питания. В свое время добил EEPROM 84 такой задачей. после этого лепил ошибки чтения / записи.


Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Doctor Дата: Ср, 26.01.2011, 23:36  |                                                                                                                Сообщение # 6
Группа: Проверенные
Ранг:  Новенький
Сообщений: 14
Репутация: 0   ±
Замечания:   ±
На сайте с 29.01.2010

Статус: Offline

Аа..точно, это как на материнках, данные с таймера сохраняются, а резервное питание это круглая батарейка. Так?
А может проще тогда резервное питания для пика подвести, поставить какую нибудь релюшку, которая при отключении главного питания переключала на резервное, дальше на пике смотрим, если главного питания нет переходим в sleep..
Не лучше не так, если главного питания нет, сохраняем в еепром данные и вырубаем пик.

Сообщение отредактировал Doctor - Ср, 26.01.2011, 23:39
DAlexV Дата: Чт, 27.01.2011, 09:45  |                                                                                                                Сообщение # 7
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 657
Репутация: 27   ±
Замечания:   ±
На сайте с 13.05.2008

Статус: Offline

Что касаемо вопроса, то все верно. Можно реализовать резервное питание и для пика. Реле не обязательно, достаточно 2 диодов + батарейка или ионистор. При пропадении основного питания генериться прерывание и записываем данные в EEPROM. Основная проблема это что бы при пропадении основного питания потребление от батарейки было минимальным(не жрало лишнего перефирия навешанное на пик). Иначе смысл автономного питания пропадает как таковое.

Будьте оригинальны-не повторяйте чужих ошибок ! Рыба сдохла. Теперь STM32(TS)+C#(VS).Старею :)
Doctor Дата: Чт, 27.01.2011, 11:12  |                                                                                                                Сообщение # 8
Группа: Проверенные
Ранг:  Новенький
Сообщений: 14
Репутация: 0   ±
Замечания:   ±
На сайте с 29.01.2010

Статус: Offline

Если вам несложно не могли бы вы подробнее рассказать, как при помощи двух диодов переключать питание?
Matrix252005 Дата: Чт, 27.01.2011, 11:22  |                                                                                                                Сообщение # 9
Группа: Проверенные
Ранг:  Разобрался
Сообщений: 636
Репутация: 43   ±
Замечания:   ±
На сайте с 12.10.2007

Статус: Offline

Приятного времени суток.
Doctor, вот смотрите. В PDF тоже самое, если вдруг Вы не сможете открыть протеус...

А здесь http://startcd.narod.ru/clock/cl_termo.html вообще, очень красиво реализован это процесс!!!!! Вы можете контролировать входное напряжения и в случае пропадания, записывать данные в EEPROM.

Прикрепления: TEMP.dsn (66.9 Kb) · TEMP.pdf (13.4 Kb)


THE TRUTH IS OUT THERE.

С уважением, Николай.

Сообщение отредактировал Matrix252005 - Чт, 27.01.2011, 14:30
Doctor Дата: Чт, 27.01.2011, 19:03  |                                                                                                                Сообщение # 10
Группа: Проверенные
Ранг:  Новенький
Сообщений: 14
Репутация: 0   ±
Замечания:   ±
На сайте с 29.01.2010

Статус: Offline

Всем большое спасибо.
  • Страница 1 из 1
  • 1
Поиск: