/******************************************************************************
Online C Compiler.
Code, Compile, Run and Debug C program online.
Write your code in this editor and press "Run" button to compile and execute it.
*******************************************************************************/
#include <stdio.h>
#include <math.h>
int main()
{
printf("Hello World\n");
const float T0 = 298.0; // Température de référence de la CTN en degrés K (25°C)
const float R0 = 10000.0; // Résistance de référence à 25°C
const float Rs = 4500.0; // Résistance du diviseur de tension
const float beta = 3435.0; // Valeur bêta de la CTN
const float Uth[6] = {3.1, 2.5, 2.0, 1.5, 1.0, 0.5}; // tension aux bornes CTN
int ADC[6]; // valeur lue par l'ADC sur 12 bits [0..4095]
float TH[6]; // Températures calculées en degrés C
for (int i = 0; i < 6; ++i) {
ADC[i] = Uth[i]/3.1 * 4095; // calcul de la valeur ADC, en int
float z = (Rs/R0) * 1/( (3.3/3.1 * 4095.0/ADC[i] -1 )); // calcul intermédiaire
TH[i] = -273 + 1/( (1/T0) + log(z) / beta ); // en °C
printf("Uth%d %.1f ADC%d: %d Temp: %.1f°C\n",i+1, Uth[i], i+1, ADC[i], TH[i]);
}
return 0;
}