Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: scmRTOS и и 430X large data model
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > scmRTOS
=DS=
Ув. гуру!
Перехожу на ядро 430Х. при попытке компиляции в Large Data model выдает следующюю ошибку

Error[Pe171]: invalid type conversion ...\scmRTOS\MSP430\OS_Target.h 193
Error[Pe171]: invalid type conversion ...\scmRTOS\MSP430\OS_Target.h 197
Ошибка здесь:

Код
#pragma diag_suppress=Ta20
INLINE inline void        SetISRStackPointer() { __set_SP_register( reinterpret_cast<word>(__segment_end("CSTACK")) ); }
#pragma diag_default=Ta20

#pragma diag_suppress=Ta20
INLINE inline void        SetStackPointer(TStackItem* sp) { __set_SP_register( reinterpret_cast<word>(sp) ); }
#pragma diag_default=Ta20


IAR 4.21.2 Модели small и medium компилируются нормально. Что у меня не так? Нужны еще какие-то настройки
или ось принципиально не поддерживает large model?
dxp
Цитата(=DS= @ Jul 17 2010, 19:20) *
IAR 4.21.2 Модели small и medium компилируются нормально. Что у меня не так? Нужны еще какие-то настройки
или ось принципиально не поддерживает large model?

reinterpret_cast<word> - преобразование типа к word (unsigned short), т.е. адресное пространство 64к. Поскольку память данных всегда располагается ниже 64к, то не возникло идеи, что надо расширять выше. Только для констант если.

И сильно не рекомендую использовать все эти программные эмуляции (вложенные прерывания, отдельный стек для прерываний) - толку от них мало, а геморроя может возникнуть прилично.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.