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

 
 
> ATtiny + IAR, Проблемы с записью в EEPROM
Alex_St
сообщение Feb 10 2005, 22:28
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 32
Регистрация: 26-11-04
Из: Одесса, Украина
Пользователь №: 1 240



Вопрос в следующем:
1. В IAR EWAVR 3.10 объявляю переменную
__no_init __eeprom uchar IR_Commands[IR_Max_Commands][IR_Max_Bytes];

Затем пробую в цикле в нее чего-нибудь записать. Например,
uchar i,j;
for (i = 0; i < 4; i++)
for (j = 0; j < 6; j++)
IR_Commands[i][j] = 0x12;
Казалось бы, в ячейки EEPROM 1 - 25 должны быть записаны 0x12.
А получается нечто типа:
:10000000FF1212FFFFFFFFFFFFFFFFFFFFFFFFFFDA
:10001000FFFFFFFFFF121212121212FFFFFFFFFF7E
:10002000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFE0
:10003000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFD0
:10004000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC0
:10005000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFB0
:10006000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFA0
:10007000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF90
:00000001FF

Записанные программатором данные читаются нормально.

Причем в IAR 2.28 + AT90S2313 все работало нормально.
В чем может быть соль?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Alex_St
сообщение Feb 14 2005, 19:05
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 32
Регистрация: 26-11-04
Из: Одесса, Украина
Пользователь №: 1 240



А есть ли возможность убрать флажок "Enhanced core" (я так понимаю, это значит использовать расширенные команды от Mega), выбрав мой целевой процессор?

И еще вопрос: как в Вашем случае правильно объявить переменные в ЕЕПРОМ?
Он матерится:
Fatal Error[e72]: Segment EEPROM_N must be defined in a segment definition option (-Z, -b or -P)
Go to the top of the page
 
+Quote Post
IgorKossak
сообщение Feb 19 2005, 11:37
Сообщение #3


Шаман
******

Группа: Модераторы
Сообщений: 3 064
Регистрация: 30-06-04
Из: Киев, Украина
Пользователь №: 221



Цитата(Alex_St @ Feb 14 2005, 22:05)
А есть ли возможность убрать флажок "Enhanced core" (я так понимаю, это значит использовать расширенные команды от Mega), выбрав мой целевой процессор?
*

Из диалога - нет, а как иначе не знаю.
Цитата(Alex_St @ Feb 14 2005, 22:05)
И еще вопрос: как в Вашем случае правильно объявить переменные в ЕЕПРОМ?
Он матерится:
Fatal Error[e72]: Segment EEPROM_N must be defined in a segment definition option (-Z, -b or -P)
*

В файле *.xcl (и только таким способом, а не через диалог) вставить строки:
/* Internal eeprom memory */
-Z(XDATA)EEPROM_N,EEPROM_I=0-_..X_EEPROM_END
В среде надо, разумеется, указать путь к этому файлу.
Go to the top of the page
 
+Quote Post
Alex_St
сообщение Feb 19 2005, 20:01
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 32
Регистрация: 26-11-04
Из: Одесса, Украина
Пользователь №: 1 240



Цитата(IgorKossak @ Feb 19 2005, 13:37)
В файле *.xcl (и только таким способом, а не через диалог) вставить строки:
/* Internal eeprom memory */
-Z(XDATA)EEPROM_N,EEPROM_I=0-_..X_EEPROM_END
В среде надо, разумеется, указать путь к этому файлу.
*


Спасибо, попробую.
Go to the top of the page
 
+Quote Post



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

 


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


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