Mazur (07.09.2013 17:27 - 17:34, просмотров: 106) ответил Ксения на Я же приводила пример. Не понравился? Тогда другой:
Edit. Лепота! Заработало так:
//*.h
u08 proc_timer(u08 num_tmr);
//*.c
u08 proc_timer(u08 num_tmr)
{
struct tmrs_queue *p_tmrs_queue = Timers_Queue+num_tmr;
if(p_tmrs_queue -> tmr_flags & (1<<TIME_OUT_FLG))
{
p_tmrs_queue -> tmr_flags &= ~ (1<<TIME_OUT_FLG);
return 1<<0;
}
else
return 0;
}
//led_blink.c
case LED_BLINK_2:
if (proc_timer(ST_LED) & (1<<0))
{
cnt++;
if (cnt &= 7)
{
LED_DDR <<= 1;
}
else
{
LED_DDR = 1<<0;
}
a = LED_BLINK_1;
}
break;
// И так заработало. Только я так и не понял смысл такого выражения.
//blink_led.c
case LED_BLINK_2:
if (proc_timer(ST_LED) & (1<<0))
{
LED_DDR=(LED_DDR<<1)|(LED_DDR>>7); // Этого.
a = LED_BLINK_1;
}
break;
Извините, упустил, где вы приводили такой пример?