consider start polarity of bridge

This commit is contained in:
Wolfgang Hottgenroth 2016-10-14 14:52:18 +02:00
parent 22229efd60
commit a9f7889862

View File

@ -79,13 +79,19 @@ void inverterExec() {
if (! running) {
// start
pulseWidthIdx = 0;
// bridge start polarity
P1OUT &= ~BIT1;
P1OUT |= ((BIT2 & P1IN) >> 1);
// start timer
TA0CTL = MC_1 | ID_0 | TASSEL_0 | TACLR;
running = true;
}
} else {
if (running) {
// stop
// stop timer
TA0CTL = MC_0;
// shutdown bridge
P2OUT &= ~BIT1;
running = false;
}
@ -94,13 +100,16 @@ void inverterExec() {
void inverterInit() {
// start, stop
P1OUT &= BIT3;
P1DIR &= BIT3;
P1OUT &= ~BIT3;
P1DIR &= ~BIT3;
// bridge direction
P1OUT &= ~BIT2;
P1OUT |= BIT1;
P1DIR |= BIT1 | BIT2;
// bridge start polarity
P1DIR &= ~BIT2;
// bridge polarity
P1OUT &= ~BIT1;
P1OUT |= ((BIT2 & P1IN) >> 1);
P1DIR |= BIT1;
// bridge enable (PWM)
P2OUT &= ~BIT1;