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

 
 
 
Reply to this topicStart new topic
> IAR_STM8, проблемы с EEPROM
Stanislav_S
сообщение Sep 16 2010, 15:27
Сообщение #1


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Возникла необходимость разместить в ЕЕПРОМ некоторые константы, и тут возникает такой вопрос. В доке сказано, что в ЕЕПРОМ можно проинициализировать только переменную с атрибутом __no_init (то есть только не инициализированную переменную), то есть можно только так - __eeprom __no_init char a;, а мне надо __eeprom char a = 10; Как говорится вопрос как быть? Может кто посоветует как обойти сею неприятность, ненабивать же значение ЕЕПРОМ прямо в окошке программатора crying.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post
neiver
сообщение Sep 16 2010, 19:27
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 214
Регистрация: 22-03-10
Из: Саратов
Пользователь №: 56 123



Самый простой вариант.
В незаписанной ячейке ЕЕПРОМ будет значение 0xff.
В самом начале программы делаете так:

if(a == 0xff)
a = <значение по умолчанию>;

Ну, естественно значение 0xff будет недоступно для использования.
Go to the top of the page
 
+Quote Post
Stanislav_S
сообщение Sep 17 2010, 11:51
Сообщение #3


извечный пессимист
*****

Группа: Свой
Сообщений: 1 113
Регистрация: 9-10-06
Из: Днепропетровск
Пользователь №: 21 125



Нет так не годится, поскольку сильно программа разбухает, тогда уж проще все константы во флэш хранить, хотя при все равно память программ расхлдуется зря smile.gif


--------------------
Slaves are those of this world
Given freedom to lay chains upon The Master
The wolf is no longer free
Release the chains and come for me
Go to the top of the page
 
+Quote Post

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

 


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


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