[an error occurred while processing this directive]
есть необходимость, и изменяемые, и как правило используемые (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено радиолюбитель без лицензии 13 декабря 2005 г. 16:39
В ответ на: Да, но вы не поняли, сути это не меняет. Нет необходимости делать флаги меняющиеся в прерывании как volatile отправлено prosto_Alex 13 декабря 2005 г. 15:24


SIGNAL(SIG_INTERRUPT0)
{
t = 1;
}

int main()
{
DDRB = 0xFF;

while (1)
{
if (t)
{
PORTB ^= 0x01;
t = 0;
}
}
}

И получается
В обработчике прерывания


93 000c 81E0 ldi r24,lo8(1)
94 000e 8093 0000 sts t,r24

В main


122 002a 8091 0000 lds r24,t
123 002e 91E0 ldi r25,lo8(1)

А вот тут приехали


124 .L10:
126 .LM5:
127 0030 8823 tst r24
128 0032 F1F3 breq .L10

Дальше уже можно не смотреть

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 
NoIX ключ Запомнить

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание

E-mail: info@telesys.ru