Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: GNUC, msvc -> Cx51
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
SANEL
Добрый день!

У меня есть код программы на С для GNUC и msvc, а я его хочу переписать для Cx51 компилятора, чтобы его запустить на МК C8051F320 MCU.
Ошибки при компиляции ссылаются на следующие строчки:

#ifdef __GNUC__

#define PACKSTRUCT( decl ) decl __attribute__((__packed__))
#define ALIGNED __attribute__((aligned(0x4)))

#else //msvc

#define PACKSTRUCT( decl ) __pragma( pack(push, 1) ) decl __pragma( pack(pop) )
#define ALIGNED

#endif

Поэтому мне надо переписать вышеописанные макросы, так чтобы Cx51 компилятор мог меня понимать. Весь остальной код более менее универсальный. Пока не знаю, как это сделать. Есть идеи?

Заранее спасибо!

С уважением,
SANEL
msalov
Вот такие макросы должны сработать
Код
#define PACKSTRUCT( decl ) decl
#define ALIGNED

Т.к. на 8-битной архитектуре выравнивание и упаковка структур особого смысла не имеют, т.к. они всегда упакованы и выровнены по границе в один байт.

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