реклама на сайте
подробности

 
 
> Обычная переменная для ISR и volatile для всех остальных, как лучше реализовать?
sonycman
сообщение Jan 24 2009, 15:32
Сообщение #1


Любитель
*****

Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695



Что-то вот задумался над одной мелочью, в принципе.
Есть переменная таймера, которая объявлена как volatile, так как модифицируется в обработчике прерывания.

Всё бы хорошо, да только хотелось бы, чтобы эта переменная была volatile для всех, кроме самого обработчика прерываний, так как лишние сохранения/загрузки в нём - это совершенно лишнее. smile.gif

Есть мысля сделать так:
Код
union {
dword isr_timer;
volatile dword timer;
}

и в ISR юзать isr_timer, а в других местах - просто timer.

Что скажете?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- sonycman   Обычная переменная для ISR и volatile для всех остальных   Jan 24 2009, 15:32
- - kimstik   ISR сделай в отдельном файле и используй как dword...   Jan 24 2009, 16:43
|- - sonycman   Цитата(kimstik @ Jan 24 2009, 20:43) ISR ...   Jan 24 2009, 17:47
|- - ReAl   Цитата(sonycman @ Jan 24 2009, 19:47) А я...   Jan 24 2009, 20:39
- - Сергей Борщ   Цитата(sonycman @ Jan 24 2009, 17:32) Что...   Jan 24 2009, 18:33
|- - sonycman   Цитата(Сергей Борщ @ Jan 24 2009, 22:33) ...   Jan 24 2009, 19:51
- - singlskv   А я вот чего-то совсем не припоминаю из стандарта ...   Jan 24 2009, 18:55
|- - Сергей Борщ   Цитата(singlskv @ Jan 24 2009, 20:55) А я...   Jan 24 2009, 19:39
|- - singlskv   Цитата(Сергей Борщ @ Jan 24 2009, 22:39) ...   Jan 24 2009, 19:53
|- - sonycman   Цитата(singlskv @ Jan 24 2009, 23:53) Без...   Jan 24 2009, 19:55
- - zltigo   Цитата(sonycman @ Jan 24 2009, 18:32) Что...   Jan 24 2009, 19:04
- - sonycman   Хм, спасибо! Если будут проблемы с extern, то ...   Jan 24 2009, 22:12
- - kimstik   Я стараюсь union реже использовать - это одна из с...   Jan 25 2009, 11:43
|- - sonycman   Цитата(kimstik @ Jan 25 2009, 15:43) Я ст...   Jan 25 2009, 12:42
|- - zltigo   Цитата(kimstik @ Jan 25 2009, 14:43) Длин...   Jan 25 2009, 13:21
|- - 777777   А ты не пробовал объявлять ее вообще без volatile?...   Jan 26 2009, 07:51
|- - Сергей Борщ   Цитата(777777 @ Jan 26 2009, 09:51) А ты ...   Jan 26 2009, 08:20
||- - 777777   Цитата(Сергей Борщ @ Jan 26 2009, 11:20) ...   Jan 26 2009, 17:45
||- - sonycman   Цитата(777777 @ Jan 26 2009, 21:45) Но с ...   Jan 26 2009, 18:56
||- - Сергей Борщ   Цитата(777777 @ Jan 26 2009, 19:45) А так...   Jan 26 2009, 19:18
|- - sonycman   Цитата(777777 @ Jan 26 2009, 11:51) А ты ...   Jan 26 2009, 11:38
|- - _Pasha   Цитата(sonycman @ Jan 26 2009, 14:38) Код...   Jan 26 2009, 11:55
|- - Сергей Борщ   Цитата(_Pasha @ Jan 26 2009, 13:55) Порти...   Jan 26 2009, 13:24
|- - sonycman   Цитата(_Pasha @ Jan 26 2009, 15:55) Пусть...   Jan 26 2009, 14:02
|- - _Pasha   Цитата(sonycman @ Jan 26 2009, 18:02) Тог...   Jan 26 2009, 14:40
|- - Сергей Борщ   Цитата(_Pasha @ Jan 26 2009, 16:40) Согла...   Jan 26 2009, 15:20
|- - _Pasha   Цитата(Сергей Борщ @ Jan 26 2009, 18:20) ...   Jan 26 2009, 15:40
- - kimstik   точно не помню но нарывался уже на непонимание ан...   Jan 25 2009, 17:31
|- - sonycman   Цитата(kimstik @ Jan 25 2009, 21:31) точн...   Jan 25 2009, 18:48
|- - singlskv   Цитата(sonycman @ Jan 25 2009, 21:48) Но ...   Jan 25 2009, 19:50
|- - singlskv   И раз уж зашла речь о безымянных обединениях и стр...   Jan 25 2009, 21:08
|- - zltigo   Цитата(singlskv @ Jan 26 2009, 00:08) Чем...   Jan 25 2009, 21:19
|- - singlskv   Цитата(zltigo @ Jan 26 2009, 00:19) Для н...   Jan 25 2009, 21:40
|- - zltigo   Цитата(singlskv @ Jan 26 2009, 00:40) тол...   Jan 25 2009, 21:51
|- - singlskv   Цитата(zltigo @ Jan 26 2009, 00:51) Что б...   Jan 25 2009, 22:10
|- - zltigo   Цитата(singlskv @ Jan 26 2009, 01:10) Vis...   Jan 25 2009, 22:33
|- - singlskv   Цитата(zltigo @ Jan 26 2009, 01:33) Ну фи...   Jan 25 2009, 22:39
|- - zltigo   Цитата(singlskv @ Jan 26 2009, 01:39) Стр...   Jan 25 2009, 22:42
- - kimstik   живодеры!! вот увидете - перестанет компил...   Jan 25 2009, 21:53


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 22:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016