[an error occurred while processing this directive]
|
#pragma vector = TIMER1_COMP1_vect
__interrupt void Timer1_Int(void)
{
static char Index = 0;
char _cnt;
unsigned _data;
_data = SinTable[Index++];
if (Index >= NSTEPS)
Index = 0;
_cnt = 16;
PORTD &= ~SPI_SYNC;
do {
if (_data & (1<<11))
PORTB |= SPI_DATA;
else
PORTB &= ~SPI_DATA;
PORTB &= ~SPI_CLCK;
_data <<= 1;
PORTB |= SPI_CLCK;
}
while (--_cnt);
PORTD |= SPI_SYNC;
}
#pragma vector = TIMER0_OVF0_vect
__interrupt void Timer0_Int(void)
{
TCNT0 = 0x9F;
if (!(++Time % 5))
Flags |= TIMER0_BIT;
if (Time >= 100)
{
TCCR0 = 0;
CTRL_PORT |= LATCH_BIT;
}
}
E-mail: info@telesys.ru