LPM3 is not working correctly, device is booting, disabled, now it is working
This commit is contained in:
@ -57,13 +57,20 @@ uint8_t digitValues[] = { EMPTY_ID, EMPTY_ID, EMPTY_ID };
|
||||
void displayInit(void *handleArg) {
|
||||
for (tPin d = DIGIT_0; d <= DIGIT_2; d++) {
|
||||
gpioSetPin(d, LOW);
|
||||
for (tPin s = SEG_A; s <= SEG_G; s++) {
|
||||
for (tPin s = SEG_A; s <= SEG_F; s++) {
|
||||
gpioSetPin(s, HIGH);
|
||||
ms_active_delay(INIT_CYCLE_DELAY);
|
||||
gpioSetPin(s, LOW);
|
||||
}
|
||||
gpioSetPin(d, HIGH);
|
||||
}
|
||||
for (tPin d = DIGIT_2; d >= DIGIT_0; d--) {
|
||||
gpioSetPin(d, LOW);
|
||||
gpioSetPin(SEG_G, HIGH);
|
||||
ms_active_delay(INIT_CYCLE_DELAY);
|
||||
gpioSetPin(SEG_G, LOW);
|
||||
gpioSetPin(d, HIGH);
|
||||
}
|
||||
}
|
||||
|
||||
static void showNumber(uint8_t n) {
|
||||
@ -73,16 +80,6 @@ static void showNumber(uint8_t n) {
|
||||
for (const tPin *pattern = NUMBERS[n]; *pattern != PINS_END; pattern++) {
|
||||
gpioSetPin(*pattern, HIGH);
|
||||
}
|
||||
// const tPin *pattern = NUMBERS[ALL_ID];
|
||||
// do {
|
||||
// gpioSetPin(*pattern, LOW);
|
||||
// pattern++;
|
||||
// } while (*pattern != PINS_END);
|
||||
// pattern = NUMBERS[n];
|
||||
// do {
|
||||
// gpioSetPin(*pattern, HIGH);
|
||||
// pattern++;
|
||||
// } while (*pattern != PINS_END);
|
||||
}
|
||||
|
||||
void displaySetValue(uint8_t v) {
|
||||
@ -92,7 +89,7 @@ void displaySetValue(uint8_t v) {
|
||||
c = (a - b * 100) / 10;
|
||||
d = a - c * 10 - b * 100;
|
||||
digitValues[2] = (b == 0) ? EMPTY_ID : (uint8_t)b;
|
||||
digitValues[1] = (c == 0) ? EMPTY_ID : (uint8_t)c;
|
||||
digitValues[1] = ((c == 0) && (b == 0)) ? EMPTY_ID : (uint8_t)c;
|
||||
digitValues[0] = (uint8_t)d;
|
||||
}
|
||||
|
||||
@ -107,11 +104,6 @@ void displayExec(void *handleArg) {
|
||||
for (const tPin *digit = DIGITS; *digit != PINS_END; digit++) {
|
||||
gpioSetPin(*digit, HIGH);
|
||||
}
|
||||
// const tPin *digit = DIGITS;
|
||||
// do {
|
||||
// gpioSetPin(*digit, HIGH);
|
||||
// digit++;
|
||||
// } while (*digit != PINS_END);
|
||||
|
||||
gpioSetPin(DIGITS[activeDigit], LOW);
|
||||
|
||||
|
@ -33,6 +33,7 @@ void gpioInitPins() {
|
||||
P1DIR |= pin.bit;
|
||||
P1SEL &= ~pin.bit;
|
||||
P1SEL2 &= ~pin.bit;
|
||||
gpioSetPin(p, pin.defaultOut);
|
||||
} else if (pin.direction == PIN_IN) {
|
||||
P1DIR &= ~pin.bit;
|
||||
P1SEL &= ~pin.bit;
|
||||
@ -50,6 +51,7 @@ void gpioInitPins() {
|
||||
P2DIR |= pin.bit;
|
||||
P2SEL &= ~pin.bit;
|
||||
P2SEL2 &= ~pin.bit;
|
||||
gpioSetPin(p, pin.defaultOut);
|
||||
} else if (pin.direction == PIN_IN) {
|
||||
P2DIR &= ~pin.bit;
|
||||
P2SEL &= ~pin.bit;
|
||||
@ -63,7 +65,6 @@ void gpioInitPins() {
|
||||
P2OUT |= pin.bit;
|
||||
}
|
||||
}
|
||||
gpioSetPin(p, pin.defaultOut);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -28,6 +28,8 @@
|
||||
int main() {
|
||||
WDTCTL = WDTPW | WDTHOLD;
|
||||
|
||||
__disable_interrupt();
|
||||
|
||||
// highest possible system clock
|
||||
DCOCTL = DCO0 | DCO1 | DCO2;
|
||||
BCSCTL1 = XT2OFF | RSEL0 | RSEL1 | RSEL2 | RSEL3;
|
||||
@ -62,7 +64,7 @@ int main() {
|
||||
|
||||
while (1) {
|
||||
schExec();
|
||||
LPM3;
|
||||
//LPM3;
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user