судя по этому коду:
Код
__irq void T0_Isr( void )
{
T0TC = 0; // Reset timer
switch ( ( IO0PIN >> 18 ) & 7 ) // read Hall sensor inputs P0.18, P0.19 and P0.20
{
case 1: // phase 6: 001
PWMMR1 = actualSpeed;
PWMMR2 = 0;
PWMMR3 = 0;
PWMMR4 = 0;
PWMMR5 = 0;
PWMMR6 = actualSpeed;
break;
case 2: // phase 4: 010
PWMMR1 = 0;
PWMMR2 = actualSpeed;
PWMMR3 = 0;
PWMMR4 = actualSpeed;
PWMMR5 = 0;
PWMMR6 = 0;
break;
case 3: // phase 5: 011
PWMMR1 = 0;
PWMMR2 = actualSpeed;
PWMMR3 = 0;
PWMMR4 = 0;
PWMMR5 = 0;
PWMMR6 = actualSpeed;
break;
case 4: // phase 2: 100
PWMMR1 = 0;
PWMMR2 = 0;
PWMMR3 = actualSpeed;
PWMMR4 = 0;
PWMMR5 = actualSpeed;
PWMMR6 = 0;
break;
case 5: // phase 1: 101
PWMMR1 = actualSpeed;
PWMMR2 = 0;
PWMMR3 = 0;
PWMMR4 = 0;
PWMMR5 = actualSpeed;
PWMMR6 = 0;
break;
case 6: // phase 3: 110
PWMMR1 = 0;
PWMMR2 = 0;
PWMMR3 = actualSpeed;
PWMMR4 = actualSpeed;
PWMMR5 = 0;
PWMMR6 = 0;
break;
default:
break; // invalid
}
T0IR = 0xFF; // reset flags
PWMLER = 0x7F; // enable PWM0 - PWM6 match latch (reload)
VICVectAddr = 0; // Acknowledge interrupt by reseting VIC
}
они не уделяют этому внимание.
пс. сейчас осознал, что то что хочу сделать не поможет, тк силовые ключи 3-х фазной схемы висят на разных драйверах и подзарядки бутстепного конденсатора не будет.
как решить эту проблему ?:
или будут ?