Files

61 lines
1.4 KiB
C
Raw Permalink Normal View History

2026-04-09 10:14:20 +08:00
#ifndef __RESI_MATH_LIB_H__
#define __RESI_MATH_LIB_H__
#include "main.h"
#include "stdint.h"
#include "string.h"
typedef struct {
uint16_t *sensor_adc_value;
uint16_t *resi_adc_value;
uint16_t math_number;
} math_resi_cal_t;
typedef enum {
SCAN_HIGH_LEVEL,
SCAN_LOW_LEVEL
} SCAN_LEVEL_T;
typedef enum {
RESI_BACKWARDS,
RESI_SCALE
} MATH_RESI_DISPLAY_TYPE_T;
typedef enum {
SINGLE_BYTE,
DOUBLE_BYTE,
} DATA_BIT_SIZE_T;
void math_resi_cali_once(math_resi_cal_t *math_resi_cal,
uint16_t *math_resi_buffer,
uint16_t math_resi_buffer_size,
SCAN_LEVEL_T scan_level);
void math_display_resi(uint16_t *math_resi_buffer,
void *display_buffer,
uint16_t buffer_size,
MATH_RESI_DISPLAY_TYPE_T type,
DATA_BIT_SIZE_T data_bit_size);
void math_resi_init(uint16_t max_display_resi_cal,
uint16_t min_display_resi_cal,
uint16_t resi_ref_value,
uint16_t adc_max_value,
uint16_t max_display);
void math_resi_init_single(uint16_t *max_display_resi_cal_single,
uint16_t *min_display_resi_cal_single,
uint16_t resi_ref_value,
uint16_t adc_max_value,
uint16_t max_display_value,
uint16_t array_len);
void math_display_resi_single(uint16_t *math_resi_buffer,
void *display_buffer,
uint16_t buffer_size,
MATH_RESI_DISPLAY_TYPE_T type,
DATA_BIT_SIZE_T data_bit_size);
#endif