/****************************************************************************** * * @file chipTemperature.c * @author ECS, Joseph Zimmer * @version V1.0.0 * @date 24-04-2019 * @brief * ******************************************************************************/ // --- INCLUDES ----------------------------------------------------------------- #include #include "sysdata.h" #include "shunt_temperature.h" #include "adc.h" // --- EXTERNE VARIABLEN -------------------------------------------------------- // --- LOKALE DEFINES - bitte hier dokumentieren -------------------------------- // --- LOKALE TYPE DEFS - bitte hier dokumentieren------------------------------- // --- DEFINITIONEN GLOBALER VARIABLEN - Bitte in Header dokumentieren ---------- // --- LOKALE VARIABLEN - bitte hier dokumentieren ------------------------------ // --- LOKALE FUNKTIONS PROTOTYPEN ---------------------------------------------- // --- LOKALE FUNKTIONEN - bitte hier dokumentieren ----------------------------- /* * @brief * @param kein * @retval kein */ // --- GLOBALE FUNKTIONEN - bitte in Header dokumentieren------------------------ void SHUNT_TEMPERATURE_Exec(int32_t adcval) { int32_t temp; //Umrechnung Spannung in mV temp = (adcval * 3300 ) / 65536; //Umrechnung in °C mit PT 1000 Sensor // temp = temp - 747; // temp = temp * 70.406; //Umrechnung in °C mit LM61 Sensor temp = temp - 600; temp = temp * 100; //2Nackommastellen //milli grad in grad * 100 /festkomma sys_data.s.values.shuntTemperature = temp / 10; if(sys_data.s.values.shuntTemperature > sys_data.s.values.shuntTemperatureMax) { sys_data.s.values.shuntTemperatureMax = sys_data.s.values.shuntTemperature; } else if (sys_data.s.values.shuntTemperature < sys_data.s.values.shuntTemperatureMin) { sys_data.s.values.shuntTemperatureMin = sys_data.s.values.shuntTemperature; } } /*************************** End of file ****************************/