diff --git a/func.c b/func.c index 0628ac1..762904c 100644 --- a/func.c +++ b/func.c @@ -29,7 +29,7 @@ int count_digits(long number) { return count; } -void split_digits(long number, int* digits, int size) { +void split_digits(long number, long* digits, int size) { int digit; int index = 0; @@ -57,7 +57,7 @@ static char map(int digit) { return 0x01; } -void map_digits(char* arr, int *digits, int size) { +void map_digits(char* arr, long *digits, int size) { int idx = 0; for (int i = size - 1; i >= 0; i--) { arr[idx] = map(digits[i]); @@ -65,8 +65,8 @@ void map_digits(char* arr, int *digits, int size) { } } -void prepare_data(char *arr, int number, int size) { - int digits[size]; +void prepare_data(char *arr, long number, int size) { + long digits[size]; split_digits(number, digits, size); map_digits(arr, digits, size); } \ No newline at end of file diff --git a/func.h b/func.h index b33bbb5..69a57a2 100644 --- a/func.h +++ b/func.h @@ -7,7 +7,7 @@ void delay(); -void split_digits(long number, int* digits, int size); +void split_digits(long number, long* digits, int size); int count_digits(long number); -void map_digits(char* arr, int *digits, int size); -void prepare_data(char *arr, int number, int size); +void map_digits(char* arr, long *digits, int size); +void prepare_data(char *arr, long number, int size); diff --git a/spi_master.c b/spi_master.c index ea220b7..771f1db 100644 --- a/spi_master.c +++ b/spi_master.c @@ -7,7 +7,7 @@ #define MAX_DIGITS 11 #define F_CPU 16000000UL -#define DELAY_MS 3000 +#define DELAY_MS 2000 void output_on_display(struct calculator *calc) { @@ -45,7 +45,7 @@ void output_on_display(struct calculator *calc) SPI_MasterTransmit(buffer, b_size); char symbol[] = {0x01}; - // операция + // Операция switch (calc->operation) { case NO_OP: @@ -122,9 +122,6 @@ void output_on_display(struct calculator *calc) prepare_data(mapped_digits1, calc->num2, size); b_size = display_add_simbol(mapped_digits1, size, buffer); SPI_MasterTransmit(buffer, b_size); - - // линия - // результат b_size = display_set_page(0x03, buffer);