|
@@ -280,9 +280,17 @@ static void PrepareForLed(void) {
|
|
|
} else {
|
|
|
/* XXX mili Amper */
|
|
|
LedPoint = 3;
|
|
|
- LedDigits[0] = value / 100;
|
|
|
- value = value % 100;
|
|
|
- LedDigits[1] = value / 10;
|
|
|
+ if(value > 99){
|
|
|
+ LedDigits[0] = value / 100;
|
|
|
+ value = value % 100;
|
|
|
+ } else {
|
|
|
+ LedDigits[0] = 0xFF;
|
|
|
+ }
|
|
|
+ if(value > 9){
|
|
|
+ LedDigits[1] = value / 10;
|
|
|
+ } else if(LedDigits[0] == 0xFF){
|
|
|
+ LedDigits[1] = 0xFF;
|
|
|
+ }
|
|
|
LedDigits[2] = value % 10;
|
|
|
}
|
|
|
}
|
|
@@ -295,11 +303,11 @@ static void OutputToLed(void) {
|
|
|
GPIOD->ODR ^= GPIO_PIN_2;
|
|
|
|
|
|
/* all off */
|
|
|
- //LED_ANODE_OFF
|
|
|
+ // LED_ANODE_OFF
|
|
|
LED_ANOD1_PORT->ODR &= ~LED_ANOD1_PIN;
|
|
|
LED_ANOD2_PORT->ODR &= ~(LED_ANOD2_PIN | LED_ANOD3_PIN);
|
|
|
|
|
|
- //LED_OUT_OFF
|
|
|
+ // LED_OUT_OFF
|
|
|
LED_SEG1_PORT->ODR |= LED_SEG1_PINS;
|
|
|
LED_SEG2_PORT->ODR |= LED_SEG2_PINS;
|
|
|
LED_SEG3_PORT->ODR |= LED_SEG3_PINS;
|
|
@@ -336,6 +344,8 @@ static void OutputToLed(void) {
|
|
|
case 9:
|
|
|
LED_OUT_9
|
|
|
break;
|
|
|
+ case 0xFF:
|
|
|
+ break;
|
|
|
default:
|
|
|
LED_OUT_MM
|
|
|
}
|