67 lines
2.5 KiB
C
67 lines
2.5 KiB
C
#include <stdio.h>
|
||
#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;
|
||
} |