[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;
}
#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 */
if (ch == 0) {
val = adc_get_filter_data(ch);
@ -184,19 +184,19 @@ void adc_loop(void)
#else
value = adc_rtot(val);
#endif
debug_write_data(24 + ch, (float)value);
debug_write_data(DEBUG_CH_ADC_FILTER + ch, (float)value);
device_data.detector_temperature = value;
ch = 1;
} else if (ch == 1) {
val = adc_get_filter_data(ch);
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;
ch = 3;
} else if (ch == 3) {
val = adc_get_filter_data(ch);
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;
ch = 0;
} else {

View File

@ -13,7 +13,14 @@
#define DEBUG_UART_PIN (GPIO_Pin_6)
#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 {
uint8_t enable;

View File

@ -105,12 +105,12 @@ void filter_sum_process(void)
idx = data_filter[i].sum_idx;
sum = data_filter[i].sum_sum;
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];
data_filter[i].sum_buff[idx] = val;
sum = sum + val;
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++;
if (data_filter[i].sum_idx >= data_filter[i].sum_len) {
data_filter[i].sum_idx = 0;
@ -155,7 +155,7 @@ void filter_median_process(void)
}
/* calc median data */
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 */
data_filter[i].median_idx++;
if (data_filter[i].median_idx >= data_filter[i].median_len) {
@ -178,7 +178,7 @@ void filter_window_process(void)
sum = sum + val;
data_filter[i].window_sum = sum;
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++;
if (data_filter[i].window_idx >= data_filter[i].window_len) {
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 */
for (uint8_t i = 0; i < 4; i++) {
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 */
data_ltc1867.val_idx++;