Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

CodeVisionAVR Evaluation 2.03.5

Отправлено leon 15 июля 2008 г. 12:18




/*
Как правильно описать переменную "var",
и под каким именем ее использовать в asm-фрагменте
программы, для CodeVisionAVR Evaluation 2.03.5?
Или её придётся, для нормальной компиляции, хоть где-то
в С-тексте применить и по-другому никак нельзя?
Может существуют какие-нибудь недокументированные возможности.
В справке об этом ничего не написано.

В старых версиях (1.25.9) все работает.
*/

#pragma used+
static char var;
#pragma used-

#if 1 // CodeVisionAVR Evaluation 2.03.5
///////////////////////////////////////////////////////////////////////////////
void main(void)
{
var = 12;// Если эту строку закоментировать, то в результате
// Warning: global static variable 'var' was declared, but not referenced
#asm
LDI R30,LOW(12)
STS _var_G000,R30
#endasm
}

#else // CodeVisionAVR Evaluation 1.25.9
///////////////////////////////////////////////////////////////////////////////
void main(void)
{
#asm
LDI R30,LOW(12)
STS _var_G1,R30
#endasm
// Все нормально воспринимается
}

#endif


Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
поделите шесть пополам:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru