#include #include "ADC_Temp.h" extern adc_temp_lookup fast_lookup[TABLE_SIZE_LOOKUP]; int main() { uint16_t adc_value = 1980; printf("\n-----------TABLE_KST45------------------\n"); // Инициализация с таблицей KST45 и R1=3300 Ом init_fast_lookup_table(TABLE_KST45, 3300.0f, ALG_STEINHART); // Получение температуры float temp = get_temperature_from_adc(adc_value, ALG_STEINHART); int16_t temp_fast = get_temperature_log_fast(adc_value); printf("ADC: %u, temp_fast: %.1f °C\n", adc_value, temp_fast / 10.0f); // Пример доступа к таблице printf("\nПример данных из таблицы быстрого поиска:\n"); for(int i = TABLE_SIZE_LOOKUP - 1; i > TABLE_SIZE_LOOKUP - 5; i--) { printf("ADC: %u, Temp: %.1f °C, Resistance: %.2f Ω\n", fast_lookup[i].adc_value, fast_lookup[i].temp_c / 10.0f, fast_lookup[i].resistance_ohm); } // Пример доступа к таблице printf("\nПример данных из таблицы быстрого поиска:\n"); for(int i = 0; i < 5; i++) { printf("ADC: %u, Temp: %.1f °C, Resistance: %.2f Ω\n", fast_lookup[i].adc_value, fast_lookup[i].temp_c / 10.0f, fast_lookup[i].resistance_ohm); } printf("\n-----------INCAR------------------\n"); // Смена конфигурации на INCAR с R1=20000 Ом // set_active_config(TABLE_INCAR, 2000.0f); init_fast_lookup_table(TABLE_INCAR, 3300.0f, ALG_STEINHART); temp_fast = get_temperature_log_fast(adc_value); printf("ADC: %u, temp_fast: %.1f °C\n", adc_value, temp_fast / 10.0f); // Пример доступа к таблице printf("\nПример данных из таблицы быстрого поиска:\n"); for(int i = TABLE_SIZE_LOOKUP - 1; i > TABLE_SIZE_LOOKUP - 5; i--) { printf("ADC: %u, Temp: %.1f °C, Resistance: %.2f Ω\n", fast_lookup[i].adc_value, fast_lookup[i].temp_c / 10.0f, fast_lookup[i].resistance_ohm); } // Пример доступа к таблице printf("\nПример данных из таблицы быстрого поиска:\n"); for(int i = 0; i < 5; i++) { printf("ADC: %u, Temp: %.1f °C, Resistance: %.2f Ω\n", fast_lookup[i].adc_value, fast_lookup[i].temp_c / 10.0f, fast_lookup[i].resistance_ohm); } return 0; }