[an error occurred while processing this directive]
|
Есть такая прога:
-------------------
void Change() // Генерит аппаратно 2 мендра со сдвигом 90 гр.
{
TCCR1B = 0;
PORTB = 0;
OCR1A = 0x0020;
OCR1B = 0x0010;
TCNT1 = 0;
TCCR1B = 0x0a;
}
void main()
{
.....
while(1)
{
delay_ms(100);
Change();
}
}
-------------------
Вся проблема в том, что КАЖДЫЙ раз при вызове функции Change() состояние фаз относительно друг друга меняется - то +90, то -90. Это происходит стабильно при каждом вызове - 1 раз так, другой эдак. При ОДИНАКОВЫХ начальных условиях.
Кто знает, почему возникает данный глюк? Надо чтобы при каждом вызове фаза была стабильно +90 или -90
E-mail: info@telesys.ru