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