#ifndef __HC595DISPLAY_H__ #define __HC595DISPLAY_H__ #include "data_type_def.h" #include "spi.h" #define RESULT_A 1 #define RESULT_B 2 #define DOT 0x10 #define RESULT_A_LAT_H() HAL_GPIO_WritePin(RESULT_A_LAT_GPIO_Port, RESULT_A_LAT_Pin, GPIO_PIN_SET) #define RESULT_A_LAT_L() HAL_GPIO_WritePin(RESULT_A_LAT_GPIO_Port, RESULT_A_LAT_Pin, GPIO_PIN_RESET) #define RESULT_B_LAT_H() HAL_GPIO_WritePin(RESULT_B_LAT_GPIO_Port, RESULT_B_LAT_Pin, GPIO_PIN_SET) #define RESULT_B_LAT_L() HAL_GPIO_WritePin(RESULT_B_LAT_GPIO_Port, RESULT_B_LAT_Pin, GPIO_PIN_RESET) #define SPI1_TIMEOUT_VALUE 100 typedef struct { uint8_t index; uint8_t step; uint16_t err_code; uint32_t reg; }hc595display_t; extern hc595display_t hc595display_A; extern hc595display_t hc595display_B; void fun_ini_595_display(hc595display_t *hc595display); void fun_ctr_595_display(hc595display_t *hc595display); #endif