Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Только вот... Если она объявлена внутри ф-ции, то volatile ей нафиг не нужен
Отправлено
SM
13 августа 2007 г. 14:27
В ответ на:
Добавьте "static", т.е. "volatile static unsigned char which;" Если "объявление переменной в прерывании" подразумевает собой "объявление переменной внутри функции-обработчика"
отправлено SM 13 августа 2007 г. 14:26
Составить ответ
|
Вернуться на конференцию
Ответы
Ну, вообще-то volatile даже со static'ом подубовей будет. Кстати, volatile и локальная тоже имеет право на жисть(+)
—
Quasy
(13.08.2007 14:51:57
80.243.9.34
, 1612 байт)
Есть лишь один случай для static volatile - если эта ф-ция может быть вызвана рекурсивно, например вложенные прерывание. В остальном - данный комплект для локальной переменной бессмысленен, так как область видимости переменной ограничена ф-цией, и никто снаружи изменить ее (переменную) не может.
—
SM
(13.08.2007 15:02:57
80.92.255.53
,
пустое
)
Не обязательно вложенные. И из фона + первого уровня прерываний можно рекурсию сбацать, а это уже не экзотика.
—
Quasy
(13.08.2007 15:24:44
80.243.9.34
,
пустое
)
В функции обработчике прерывания-то? Можно, конечно. Но лучше не нужно. Принудительно прерывание лучше вызвать установкой флага, или еще каки-то официальным железным методом.
—
SM
(13.08.2007 15:31:16
80.92.255.53
,
пустое
)
Похоже достаточно static:
—
misyachniy
(13.08.2007 15:05:8
195.10.210.194
,
пустое
,
ссылка
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
сложите три и три:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru