[fix] modify number as macro when call debug_write_data

This commit is contained in:
zhji 2024-04-20 16:01:33 +08:00
parent 6276df31cc
commit a725f6c565
4 changed files with 17 additions and 10 deletions

View File

@ -175,7 +175,7 @@ void adc_loop(void)
val = adc_det_temp_from_ltc1867; val = adc_det_temp_from_ltc1867;
} }
#endif #endif
debug_write_data(20 + ch, (float)val); debug_write_data(DEBUG_CH_ADC_RAW + ch, (float)val);
adc_input_data(ch, val); /* input data from ADC to sort buffer */ adc_input_data(ch, val); /* input data from ADC to sort buffer */
if (ch == 0) { if (ch == 0) {
val = adc_get_filter_data(ch); val = adc_get_filter_data(ch);
@ -184,19 +184,19 @@ void adc_loop(void)
#else #else
value = adc_rtot(val); value = adc_rtot(val);
#endif #endif
debug_write_data(24 + ch, (float)value); debug_write_data(DEBUG_CH_ADC_FILTER + ch, (float)value);
device_data.detector_temperature = value; device_data.detector_temperature = value;
ch = 1; ch = 1;
} else if (ch == 1) { } else if (ch == 1) {
val = adc_get_filter_data(ch); val = adc_get_filter_data(ch);
value = adc_rtot(val); value = adc_rtot(val);
debug_write_data(24 + ch, (float)value); debug_write_data(DEBUG_CH_ADC_FILTER + ch, (float)value);
device_data.lamp_temperature = value; device_data.lamp_temperature = value;
ch = 3; ch = 3;
} else if (ch == 3) { } else if (ch == 3) {
val = adc_get_filter_data(ch); val = adc_get_filter_data(ch);
value = (uint32_t)val * 6600 / 4096; value = (uint32_t)val * 6600 / 4096;
debug_write_data(24 + ch, (float)value); debug_write_data(DEBUG_CH_ADC_FILTER + ch, (float)value);
device_data.lamp_voltage = value; device_data.lamp_voltage = value;
ch = 0; ch = 0;
} else { } else {

View File

@ -13,7 +13,14 @@
#define DEBUG_UART_PIN (GPIO_Pin_6) #define DEBUG_UART_PIN (GPIO_Pin_6)
#define DEBUG_UART_BAUDRATE (2 * 1000 * 1000) #define DEBUG_UART_BAUDRATE (2 * 1000 * 1000)
#define DEBUG_CHAN_MAX (28) #define DEBUG_CH_RAW (0 * 4)
#define DEBUG_CH_SUM_1 (1 * 4)
#define DEBUG_CH_SUM_2 (2 * 4)
#define DEBUG_CH_MEDIAN (3 * 4)
#define DEBUG_CH_WINDOW (4 * 4)
#define DEBUG_CH_ADC_RAW (5 * 4)
#define DEBUG_CH_ADC_FILTER (6 * 4)
#define DEBUG_CHAN_MAX (7 * 4)
struct debug_data_s { struct debug_data_s {
uint8_t enable; uint8_t enable;

View File

@ -105,12 +105,12 @@ void filter_sum_process(void)
idx = data_filter[i].sum_idx; idx = data_filter[i].sum_idx;
sum = data_filter[i].sum_sum; sum = data_filter[i].sum_sum;
val = data_filter[i].input; val = data_filter[i].input;
debug_write_data(4 + i, (float)val); debug_write_data(DEBUG_CH_SUM_1 + i, (float)val);
sum = sum - data_filter[i].sum_buff[idx]; sum = sum - data_filter[i].sum_buff[idx];
data_filter[i].sum_buff[idx] = val; data_filter[i].sum_buff[idx] = val;
sum = sum + val; sum = sum + val;
data_filter[i].sum_sum = sum; data_filter[i].sum_sum = sum;
debug_write_data(8 + i, (float)(data_filter[i].sum_sum)); debug_write_data(DEBUG_CH_SUM_2 + i, (float)(data_filter[i].sum_sum));
data_filter[i].sum_idx++; data_filter[i].sum_idx++;
if (data_filter[i].sum_idx >= data_filter[i].sum_len) { if (data_filter[i].sum_idx >= data_filter[i].sum_len) {
data_filter[i].sum_idx = 0; data_filter[i].sum_idx = 0;
@ -155,7 +155,7 @@ void filter_median_process(void)
} }
/* calc median data */ /* calc median data */
data_filter[i].median_output = (iter->data + iter->next->data) / 2; data_filter[i].median_output = (iter->data + iter->next->data) / 2;
debug_write_data(12 + i, (float)(data_filter[i].median_output)); debug_write_data(DEBUG_CH_MEDIAN + i, (float)(data_filter[i].median_output));
/* iterate median_idx */ /* iterate median_idx */
data_filter[i].median_idx++; data_filter[i].median_idx++;
if (data_filter[i].median_idx >= data_filter[i].median_len) { if (data_filter[i].median_idx >= data_filter[i].median_len) {
@ -178,7 +178,7 @@ void filter_window_process(void)
sum = sum + val; sum = sum + val;
data_filter[i].window_sum = sum; data_filter[i].window_sum = sum;
data_filter[i].window_output = sum / data_filter[i].window_len; data_filter[i].window_output = sum / data_filter[i].window_len;
debug_write_data(16 + i, (float)(data_filter[i].window_output)); debug_write_data(DEBUG_CH_WINDOW + i, (float)(data_filter[i].window_output));
data_filter[i].window_idx++; data_filter[i].window_idx++;
if (data_filter[i].window_idx >= data_filter[i].window_len) { if (data_filter[i].window_idx >= data_filter[i].window_len) {
data_filter[i].window_idx = 0; data_filter[i].window_idx = 0;

View File

@ -198,7 +198,7 @@ void TIM2_IRQHandler(void)
/* split 2 for loop, because sample timing is strict, only place important code in sample duration */ /* split 2 for loop, because sample timing is strict, only place important code in sample duration */
for (uint8_t i = 0; i < 4; i++) { for (uint8_t i = 0; i < 4; i++) {
data_ltc1867.sum[i] += diff32768(val[i]); /* add every channel original data for next process */ data_ltc1867.sum[i] += diff32768(val[i]); /* add every channel original data for next process */
debug_write_data(i, (float)val[i]); /* channel 0~3 for ltc1867 original sample data */ debug_write_data(DEBUG_CH_RAW + i, (float)val[i]); /* channel 0~3 for ltc1867 original sample data */
} }
adc_det_temp_from_ltc1867 = val[4]; /* channel 4 for ltc1867 detector temperature sample data */ adc_det_temp_from_ltc1867 = val[4]; /* channel 4 for ltc1867 detector temperature sample data */
data_ltc1867.val_idx++; data_ltc1867.val_idx++;