Исправление переполнения

This commit is contained in:
mrnek 2023-06-08 15:41:54 +03:00
parent 987e25ab3e
commit a766efb8a9
4 changed files with 7 additions and 6 deletions

BIN
GccApplication3_6_2.atsuo Normal file

Binary file not shown.

2
func.c
View File

@ -66,7 +66,7 @@ void map_digits(char* arr, long *digits, int size) {
}
void prepare_data(char *arr, long number, int size) {
long digits[size];
long digits[12];
split_digits(number, digits, size);
map_digits(arr, digits, size);
}

View File

@ -39,7 +39,6 @@ void get_logical_keys(struct key *undc_keys) {
}
} else {
undc_keys[i].time = timestamp;
}
}
}

View File

@ -4,6 +4,7 @@
#include <util/delay.h>
#include "spi_master.h"
#include "func.h"
#include <stdlib.h>
#define MAX_DIGITS 11
#define F_CPU 16000000UL
@ -22,10 +23,11 @@ void output_on_display(struct calculator *calc)
b_size = display_set_page(0x01, buffer);
SPI_MasterTransmit(buffer, b_size);
int size = count_digits(calc->num1);
char mapped_digits[size];
prepare_data(mapped_digits, calc->num1, size);
b_size = display_add_simbol(mapped_digits, size, buffer);
//int size = count_digits(calc->num1);
char mapped_digits[12];
//prepare_data(mapped_digits, calc->num1, size);
ltoa(calc->num1 , mapped_digits, 10);
b_size = display_add_simbol(mapped_digits, 12, buffer);
SPI_MasterTransmit(buffer, b_size);
break;