Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2017-июл-24 15:50

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: Про особенности СС7А
СообщениеДобавлено: 2010-фев-18 12:39 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 429
На строку
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;
Согласитесь, это извращение


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про особенности СС7А
СообщениеДобавлено: 2010-фев-18 13:18 
Не в сети

Зарегистрирован: 2009-май-22 09:01
Сообщения: 1262
Откуда: АО "ПКК Миландр"
ЧумА писал(а):
На строку
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 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 429
Деваться некуда :lol: , будем привыкать


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-06 07:46 
Не в сети

Зарегистрирован: 2010-апр-05 12:37
Сообщения: 7
У меня такой вопрос - можете выложить примеры программ,с описанием векторов и обработчиков прерываний для АЦП и UART?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 2010-апр-07 16:08 
Не в сети

Зарегистрирован: 2009-май-25 15:07
Сообщения: 158
Откуда: АО "ПКК Миландр"
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
}


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про особенности СС7А
СообщениеДобавлено: 2011-окт-06 15:41 
Не в сети

Зарегистрирован: 2010-июл-22 15:50
Сообщения: 11
Здравствуйте! Я не углублялся, но есть ли пример для СС7А обработки вложенных прерываний? Подходит указанный выше?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Про особенности СС7А
СообщениеДобавлено: 2011-окт-06 16:00 
Не в сети

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


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 7 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB