Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Codevision и asm
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
gormih
Стоит такая задача:

Есть прога на асме, для того чтобы вносить в нее серьезные изменения хотелось бы переделать ее на си путем вставки ассемблерных ставок в си процедуры. Одна из процедур на асме, а именно обработчик прерывания является ключевой в проге, но в ней есть один неудобный момент - процедура реально должна выполнятся именно то количество тактов, которое в ней сейчас есть, и ... там нет команды сохранения в стеке регистра r19.
В связи с чем вопрос:

Как запретить компилятору си использовать данный регистр? (r19)


Если опишу глобальную переменную.

register char nouse @19;

не будет глючить?
AndryG
Цитата(Михаил Горюнов @ Oct 17 2006, 15:38) *
Если опишу глобальную переменную.

register char nouse @19;

не будет глючить?


будет/ codeVision глобальные переменные ложит либо в первую половину регистров, либо в память.

А запретить... ничего в голову не приходит. sad.gif
kamedi_clab
Цитата(Михаил Горюнов @ Oct 17 2006, 16:38) *
Как запретить компилятору си использовать данный регистр? (r19)

Если опишу глобальную переменную.

register char nouse @19;

не будет глючить?


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