реклама на сайте
подробности

 
 
> хранение конфигурации во флеше
asket
сообщение Jan 6 2010, 21:15
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 91
Регистрация: 24-08-06
Из: Москва
Пользователь №: 19 809



У меня малый опыт, прошу сильно не бить. :-) Проблема такова, разрабатывается прибор на базе STM32F103, в котором нужно хранить настройки конфигурации периферийных узлов, например реле, датчики и др., эти настройки задаются либо с ПК, либо по умолчанию, естественно параметры у каждого узла свои собственные, и должны храниться в энергонезависимой памяти. Планирую хранить в свободной области внутренней флеш-памяти программ, пока в голове возникает мысль хранить настройки блоками фиксированного размера и размещать туда параметры настройки, при обрашении к ним по каким-то атрибутам, например, по типу узла, определяем шаблон в виде структуры и читаем параметры, затем по тем же атрибутам определяется вызываемый процесс наприер если это реле то вызывается обработчик реле и т.д. Есть ли способы более эффективней? Может с помошью xml-технологии или файловой системы? Буду благодрен за любой ответ!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
rezident
сообщение Jan 7 2010, 03:14
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Многое зависит от объема конфигурационных данных. Умещаются ли они целиком в один сегмент Flash? Следует учитывать, что информацию во Flash можно переписать, только стерев и вновь записав целый блок/сектор. Если у вас предусмотрен буфер (есть достаточное место в ОЗУ) в который вы можете считать целый сектор, модифицировать его содержимое и переписать его обратно во Flash, то по большому счету остается только одна трудность - вероятность пропадания питания во время записи. Т.е. нужно предусмотреть такую возможность и способы контроля целостности данных. Если же свободного ОЗУ для этого дела нет, то можно использовать еще один сектор Flash как буферный, заранее зарезервировав его для этих целей. Если же и ОЗУ и Flash "в обрез", то следует использовать внешнюю память типа EEPROM или DataFlash. Благо стоят они копейки. Еще один плюс за использование внешней памяти в том, что при устоявшихся (неизменяемых) структурах данных конфигурации при модификации программного обеспечения в МК не нужно будет устройство конфигурировать по-новой. Ведь при стирании Flash в МК во внешней EEPROM конфигурация сохранится.
Go to the top of the page
 
+Quote Post
asket
сообщение Jan 7 2010, 07:54
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 91
Регистрация: 24-08-06
Из: Москва
Пользователь №: 19 809



Спасибо! А сушествует ли какое-то подобие виртуальной файловой системы процессов для STM32F103 как в Unix? Мне хотелось бы с помощью одной системной функции вызвать тот или иной процесс, указав параметр ссылки. Если есть то где можно посмотреть? Дело в том, что число подключаемых периферий может варьироваться, а также могут удаляться и создаваться вновь, редактировать параметры настроек, хотелось бы с устройствами осуществлять такие же действия как с файлами.

PS Всех С Рождеством Христовым! Добра, любви, здоровья и благополучия!

Сообщение отредактировал asket - Jan 7 2010, 07:59
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 05:32
Рейтинг@Mail.ru


Страница сгенерированна за 0.01397 секунд с 7
ELECTRONIX ©2004-2016