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