MODEL_ADC_EX/APP/main.c

31 lines
1.1 KiB
C

#include <stdio.h>
#include "ADC_Temp.h"
extern adc_temp_lookup fast_lookup[TABLE_SIZE_LOOKUP];
int main() {
// Инициализация таблицы быстрого поиска
init_fast_lookup_table(ALG_STEINHART);
uint16_t value = 1980;
// Получение температуры различными методами
float T_ALG_STEINHART = get_temperature_from_adc(value, ALG_STEINHART);
int16_t T_FAST = get_temperature_log_fast(value);
float resistance = get_resistance_from_adc(value);
printf("T_ALG_STEINHART = %f °C\n", T_ALG_STEINHART);
printf("T_FAST = %.1f °C\n", T_FAST / 10.0f);
printf("Resistance = %.2f Ω\n", resistance);
// Пример доступа к таблице
printf("\nПример данных из таблицы быстрого поиска:\n");
for(int i = 2048; i < 2048 + 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;
}