There is an issue in the seg_display function where the digit positions are not displayed correctly.
Problematic Code
void seg_display(int16_t val){
int8_t digit;
for (int i = 1; i < 5; i++){
digit = val % 10;
val = val / 10;
close_seven_segment();
show_seven_segment(4, digit);
DrvSYS_Delay(10000);
}
}
fix is
void seg_display(int16_t val){
int8_t digit;
for (int i = 0; i < 4; i++){
digit = val % 10;
val = val / 10;
close_seven_segment();
show_seven_segment(3 - i, digit); // Correct position
DrvSYS_Delay(10000);
}
}
Problem Description
There is an issue in the
seg_display
function where the digit positions are not displayed correctly.Problematic Code