some changes with the loops

This commit is contained in:
Wolfgang Hottgenroth
2016-09-11 22:06:38 +02:00
parent 275779c0b3
commit 4ce993230f

View File

@ -67,16 +67,22 @@ void displayInit(void *handleArg) {
}
static void showNumber(uint8_t n) {
const tPin *pattern = NUMBERS[ALL_ID];
do {
for (const tPin *pattern = NUMBERS[ALL_ID]; *pattern != PINS_END; pattern++) {
gpioSetPin(*pattern, LOW);
pattern++;
} while (*pattern != PINS_END);
pattern = NUMBERS[n];
do {
}
for (const tPin *pattern = NUMBERS[n]; *pattern != PINS_END; pattern++) {
gpioSetPin(*pattern, HIGH);
pattern++;
} while (*pattern != PINS_END);
}
// 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) {
@ -85,8 +91,8 @@ void displaySetValue(uint8_t v) {
b = a / 100;
c = (a - b * 100) / 10;
d = a - c * 10 - b * 100;
digitValues[2] = (uint8_t)b;
digitValues[1] = (uint8_t)c;
digitValues[2] = (b == 0) ? EMPTY_ID : (uint8_t)b;
digitValues[1] = (c == 0) ? EMPTY_ID : (uint8_t)c;
digitValues[0] = (uint8_t)d;
}
@ -98,14 +104,16 @@ void displayExec(void *handleArg) {
activeDigit = 0;
}
const tPin *digit = DIGITS;
do {
for (const tPin *digit = DIGITS; *digit != PINS_END; digit++) {
gpioSetPin(*digit, HIGH);
digit++;
} while (*digit != PINS_END);
}
// const tPin *digit = DIGITS;
// do {
// gpioSetPin(*digit, HIGH);
// digit++;
// } while (*digit != PINS_END);
digit = DIGITS + activeDigit;
gpioSetPin(*digit, LOW);
gpioSetPin(DIGITS[activeDigit], LOW);
showNumber(digitValues[activeDigit]);
}