MicroCHIP.RU
Главная Документация Отладочные средства Справочник Поиск Ссылки
 Новости   Конференция   Контакты 
 

Подскажите, плз, как сделать, чтобы компилятор &qu

 Нoвaя темa  |  Наверх  |  Перейти к теме  |  Поиск  |  Правила  |  Вход 

ВНИМАНИЕ!
Вы просматриваете архив форума.

Этот форум работает только в режиме просмотра и поиска.

Действующий форум переведен на новый движок и
находится по адресу www.microchip.su

 Подскажите, плз, как сделать, чтобы компилятор &qu
Автор: nicck ()
Дата:   24/02/2003 14:40

Подскажите, плз, как сделать, чтобы компилятор "не лез" в пару регистров,
которые мне нужны для других дел?


 
 объявить их глобальными(+)
Автор: abivan ()
Дата:   25/02/2003 09:40

и не использовать их.
char r1,r2;
int main(){}


 
 Спасибо! Как оказалось, еще надо и...
Автор: nicck ()
Дата:   25/02/2003 15:38

... и принудительно присваиваемые адреса регистров требуемым char- переменным
стараться располагать в конце регистрового пространства, тем самым имея какую-
никакую гарантию, что компилятор не прихватит их для своих целей.


 
 Re: Спасибо! Как оказалось, еще надо и...
Автор: Vova ()
Дата:   25/02/2003 18:08

Если пользоваться ht picc, то у него есть опция RESROM (см. доки) - резервировать область ОЗУ.
Тогда компилер ничего там располагать не будет.


 
 Re: Были бы нормальные доки - не было бы глупых во
Автор: nicck ()
Дата:   25/02/2003 18:17

Re: Были бы нормальные доки - не было бы глупых вопросов!


 
 Re: Были бы нормальные доки - не было бы глупых во
Автор: Vova ()
Дата:   25/02/2003 18:48

Если MPLab 5.хх, то в node properties на hex'е (там где опции линкера перечисляешь) в additional
command line options напиши "-RESROM20-30" (без кавычек) в результате компилер область памяти с
20h по 30h не тронет вооще.

А еще можно поиграться с psect ...


 
 Да вы все о чем?(+)
Автор: abivan ()
Дата:   26/02/2003 11:16

Зачем резервировать с помощью опций?
Вы в досе для писи проги писали?
Здесь те же принципы.
Используйте только стандартные возможности языка.
Или в вопросе конкретно опишите ситуацию, когда стандартными средствами вам не
удалось достичь желаемого результата.
В данном случае достаточно объявить переменные глобальными или статическими и
компилятор не тронет их без вашего ведома. Керниган и Ричи вам помогут.
Всего, Иван.


 
 Re: Спасибо, Иван! Я в Си начинающий...
Автор: nicck ()
Дата:   27/02/2003 09:15

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