31 lines
1.1 KiB
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;
|
|
} |