Миландр
http://forum.milandr.ru/

Про особенности СС7А
http://forum.milandr.ru/viewtopic.php?f=17&t=188
Страница 1 из 1

Автор:  ЧумА [ 2010-фев-18 12:39 ]
Заголовок сообщения:  Про особенности СС7А

На строку
CAN_BRG1 = ((SJW & 0x03) << 6) | (BRP & 0x3F);
получаем:
Unable to generate code
Приходится вот так:
unsigned char aaa1;
aaa1 = ((SJW & 0x03) << 6) ;
aaa1 = aaa1 | (BRP & 0x3F);
СAN_BRG1 = aaa1;
Согласитесь, это извращение

Автор:  -=Sergei=- [ 2010-фев-18 13:18 ]
Заголовок сообщения:  Re: Про особенности СС7А

ЧумА писал(а):
На строку
CAN_BRG1 = ((SJW & 0x03) << 6) | (BRP & 0x3F);
получаем:
Unable to generate code
Приходится вот так:
unsigned char aaa1;
aaa1 = ((SJW & 0x03) << 6) ;
aaa1 = aaa1 | (BRP & 0x3F);
СAN_BRG1 = aaa1;
Согласитесь, это извращение


Не соглашусь...
Ограничения компилятора описаны в руководстве...

- the compiler is unable to generate code (компилятор не может сгенерировать код)
Решение: Некоторые описания на языке С должны быть переписаны более просто


Есть еще ряд ограничений, например нельзя создавать двумерные массивы, использовать в выражении два индекса и так далее...

Преимущество разработки заключается не в том, чтобы обеспечить полную поддержку ANSI C, а для того, чтобы позволить лучше использовать ограниченные ресурсы кода и ОЗУ

Если провести сравнение различных компиляторов на разных задачах, то СС7А реально создает более компактный и более быстрый код, чем кто либо другой. Но есть и обратная сторона медали - неполная поддержка ANSI C.

Автор:  ЧумА [ 2010-фев-18 13:39 ]
Заголовок сообщения:  Будем привыкать

Деваться некуда :lol: , будем привыкать

Автор:  Lakec [ 2010-апр-06 07:46 ]
Заголовок сообщения: 

У меня такой вопрос - можете выложить примеры программ,с описанием векторов и обработчиков прерываний для АЦП и UART?

Автор:  Lew [ 2010-апр-07 16:08 ]
Заголовок сообщения: 

Lakec писал(а):
У меня такой вопрос - можете выложить примеры программ,с описанием векторов и обработчиков прерываний для АЦП и UART?

Вектор для всех периферийных прерываний и обработчик один:
interrupt iServer(void)
{
multi_interrupt_entry_and_save
PERIPHERAL_service:
if ADIF {
AD1IF = 0; //сбрасываете соответствующий флаг
... // обработчик
}
if RCIF { // тут бит сбрасывается автоматически при чтении приемника
...}
TMR0_service:
T0CKI_service:
INT_service:
interrupt_exit_and_restore
}

Автор:  stormbird4 [ 2011-окт-06 15:41 ]
Заголовок сообщения:  Re: Про особенности СС7А

Здравствуйте! Я не углублялся, но есть ли пример для СС7А обработки вложенных прерываний? Подходит указанный выше?

Автор:  Lew [ 2011-окт-06 16:00 ]
Заголовок сообщения:  Re: Про особенности СС7А

stormbird4 писал(а):
Здравствуйте! Я не углублялся, но есть ли пример для СС7А обработки вложенных прерываний? Подходит указанный выше?
Вопрос уже поднимался тут:
viewtopic.php?f=4&t=328

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/