diff --git a/APP/inc/ADC_Temp.h b/APP/inc/ADC_Temp.h index 332a2ec..9b9b93f 100644 --- a/APP/inc/ADC_Temp.h +++ b/APP/inc/ADC_Temp.h @@ -32,7 +32,7 @@ typedef enum { // Размеры таблиц #define TABLE_SIZE_KST45 26 #define TABLE_SIZE_INCAR 38 -#define TABLE_SIZE_LOOKUP 4096 +#define TABLE_SIZE_LOOKUP 256 // Предварительно вычисленная таблица для быстрого доступа для каждой таблицы typedef struct { diff --git a/APP/main.c b/APP/main.c index d838416..6f083e6 100644 --- a/APP/main.c +++ b/APP/main.c @@ -96,32 +96,34 @@ int main() { 3300.0f, // R1 для INCAR ALG_STEINHART); - uint16_t adc_value = 1980; + uint16_t adc_value = 3200;//1980; printf("\n=== Работа с обеими таблицами одновременно ===\n"); // Получаем температуру для KST45 int16_t temp_kst45 = get_temperature_log_fast_for_table(adc_value, TABLE_KST45); - printf("KST45: ADC=%u, Temp=%.1f °C\n", adc_value, temp_kst45 / 10.0f); + printf("KST45: ADC=%u, Temp=%.2f °C\n", adc_value, temp_kst45 / 10.0f); // Получаем температуру для INCAR int16_t temp_incar = get_temperature_log_fast_for_table(adc_value, TABLE_INCAR); - printf("INCAR: ADC=%u, Temp=%.1f °C\n", adc_value, temp_incar / 10.0f); + printf("INCAR: ADC=%u, Temp=%.2f °C\n", adc_value, temp_incar / 10.0f); // Можно переключать активную конфигурацию printf("\n=== Переключение активной конфигурации ===\n"); set_active_config(TABLE_KST45, 3300.0f); int16_t temp_active1 = get_temperature_log_fast(adc_value); - printf("Активная (KST45): Temp=%.1f °C\n", temp_active1 / 10.0f); + float temp_kst45_alg = get_temperature_from_adc(adc_value, ALG_STEINHART); + printf("Активная (KST45): Temp=%.2f °C Temp (alg) = %.2f °C\n", temp_active1 / 10.0f, temp_kst45_alg); - set_active_config(TABLE_INCAR, 20000.0f); + set_active_config(TABLE_INCAR, 3300.0f); int16_t temp_active2 = get_temperature_log_fast(adc_value); - printf("Активная (INCAR): Temp=%.1f °C\n", temp_active2 / 10.0f); + float temp_incar_alg = get_temperature_from_adc(adc_value, ALG_STEINHART); + printf("Активная (INCAR): Temp=%.2f °C Temp (alg) = %.2f °C\n", temp_active2 / 10.0f, temp_incar_alg); // Получаем доступ к таблицам для отладки const fast_lookup_tables_t* tables = get_fast_tables(); - +/* printf("\n=== Пример данных из таблиц быстрого поиска ===\n"); printf("KST45 таблица (первые 15 записи):\n"); for(int i = 0; i < 15; i++) { @@ -154,7 +156,7 @@ int main() { tables->incar[i].temp_c / 10.0f, tables->incar[i].resistance_ohm); } - +*/ // Сохраняем таблицы в файлы printf("\n=== Сохранение таблиц в файлы ===\n"); save_both_tables();