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

 
 
> Проблема с IAR, не видит регистр SFR
a123-flex
сообщение May 22 2010, 08:26
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884



Пытаюсь в IAR 5.x скомпилить свои старые проекты. Все хорошо, ругается только на одну строчку:

while(!(SPSR & (1 << SPIF ))); // wait for data transfer to be completed

IAR грит Error[Pe020]: identifier "SPIF" is undefined C:\My\My_work\Svar\Soft\Brd\ADC\dataflash.c 9
Собираю проект для меги 16. Хидер меги подключен #include <iom16.h>

в хидере регистр SPSR описан как

SFR_B_N(0x0E,SPSR,SPIF,WCOL,Dummy5,Dummy4,Dummy3,Dummy2,Dummy1,SPI2X)


сижу пытаюсь понять что я сделал не так. В еще 30 местах проекта такой же способ использования битового поля ошибки не дает...

Цитата(a123-flex @ May 22 2010, 12:14) *
Пытаюсь в IAR 5.x скомпилить свои старые проекты. Все хорошо, ругается только на одну строчку:

while(!(SPSR & (1 << SPIF ))); // wait for data transfer to be completed

IAR грит Error[Pe020]: identifier "SPIF" is undefined C:\My\My_work\Svar\Soft\Brd\ADC\dataflash.c 9
Собираю проект для меги 16. Хидер меги подключен #include <iom16.h>

в хидере регистр SPSR описан как

SFR_B_N(0x0E,SPSR,SPIF,WCOL,Dummy5,Dummy4,Dummy3,Dummy2,Dummy1,SPI2X)


сижу пытаюсь понять что я сделал не так. В еще 30 местах проекта такой же способ использования битового поля ошибки не дает...



чертовски интересно. нашел ответ на свой прошлый вопрос.
http://electronix.ru/forum/index.php?showt...mp;#entry761798

оказывается у меня в проекте была отключена галка Enable definitions in IO include files.
однако при подключении инклюдов ручками типа #include <iom16.h> все остальные определения регистров работали. Стоило поставить галку - IAR на SPIF ругаться перестал. smile3046.gif laughing.gif

Оспода, Ваши версии.


--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
Petka
сообщение May 22 2010, 19:29
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(a123-flex @ May 22 2010, 12:26) *
...
Собираю проект для меги 16. Хидер меги подключен #include <iom16.h>
...

Более правильно подключать просто <io.h>
И правильно выставлять "галки" в среде.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение May 22 2010, 20:22
Сообщение #3


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(a123-flex @ May 22 2010, 13:26) *
Оспода, Ваши версии.

///поглаживая по головке/// Гений!


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
старый чайник
сообщение Jul 13 2010, 08:47
Сообщение #4





Группа: Участник
Сообщений: 11
Регистрация: 1-06-08
Из: Н. Новгород
Пользователь №: 37 960



После полудня знакомства с IAR 5.50 уперся в проблему.

При запуске симулятора получаю сообщение:
Fatal Error:
Tue Jul 13 20:18:52 2010: run_S00-22: illegal opcode P0:65535, P1:0

что-бы это значило и как бы мне приспособить Продукт к симуляции в AVR Studio?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 13:52
Рейтинг@Mail.ru


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