регистровая переменная в IAR AVR C

Привет All!

Подскажите плиз, как использовать сабж.

Я делаю так:

В файле 1.с: __regvar __no_init unsigned char ucTemp @ 15;

В файле 1.h: extern __regvar __no_init unsigned char ucTemp @ 15;

В результате компилер ругается: Error[Pa008]: illegal usage of location operator in declaration Error[Ta012]: A __regvar declared variable must be located.

Hе могу понять что я делаю не так?

Reply to
Slava Ryabinin
Loading thread data ...

Hi!

"Slava Ryabinin" сообщил в новостях следующее:

Если ты хочешь R15 использовать для глобальной переменной, то надо его залокировать в опциях проекта (ICCAVR->Code), чтобы компилятор не использовал для своих целей. Строку __regvar __no_init unsigned char ucTemp @ 15; включи в .h файл, а extern... вообще не надо.

Вроде бы, при этом еще нужно библиотеку пересобрать, сам не проверял, поскольку встроенной библиотекой не пользуюсь

Примите уверения в совершеннейшем к Вам почтении

Reply to
Sergey Zabelin

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.