FIS für Motorrad

Dein edit muss ich mir dann nochmal genauer anschauen ..... glaub so ganz hab ich das noch nicht durch .

Weil der Sketch mit einem Messfühler doch normal funktioniert .... dachte ich hätte da nicht viel verändert

#define MESSFUEHLER1 A0 // Messfühler1
#define MESSFUEHLER2 A1 // Messfühler2
#define EINZELMESSUNGEN1 25 // Das verändern der Zahl ändert auch die Anzahl der Einzelmessungen.
#define EINZELMESSUNGEN2 25
#define A_2 1.401592401e-03 // A-Koeffizient des Messfühlers
#define B_2 2.375252635e-04 // B-Koeffizient des Messfühlers
#define C_2 0.9880580930e-07 // C-Koeffizient des Messfühlers
#define A_3 1.401592401e-03 // A-Koeffizient des Messfühlers
#define B_3 2.375252635e-04 // B-Koeffizient des Messfühlers
#define C_3 0.9880580930e-07 // C-Koeffizient des Messfühlers
#define FESTWIDERSTAND_2 3000 // Widerstandswert des Serienfestwiderstandes des Messfühlers
#define FESTWIDERSTAND_3 3000 // Widerstandswert des Serienfestwiderstandes des Messfühlers
uint16_t SUM_EM_2[EINZELMESSUNGEN1];
uint16_t SUM_EM_3[EINZELMESSUNGEN2];
void setup(void) {
Serial.begin(9600);
}
void loop(void) {
uint8_t i;
float DURCHSCHNITT_2;
float R2_2, lnR2_2;
float TEMP_2;
float DURCHSCHNITT_3;
float R2_3, lnR2_3;
float TEMP_3;
// Hier werden die Einzelmessungen des Messfühlers vorgenommen.
// Zwischen den Messungen gibt es eine Wartezeit von 10 Millisekunden.

for (i = 0; i < EINZELMESSUNGEN1; i++) {
SUM_EM_2 = analogRead(MESSFUEHLER1);

  • delay(10);*
  • for (i = 0; i < EINZELMESSUNGEN2; i++)*
    SUM_EM_3 = analogRead(MESSFUEHLER2);
    * delay(10);*
    * }*
    * // Berechnung des Durchschnittswertes aller Einzelmessungen des Messfühlers.*
    * DURCHSCHNITT_2 = 0;
    _
    for (i = 0; i < EINZELMESSUNGEN1; i++) {_
    DURCHSCHNITT_2 += SUM_EM_2;
    _ }_
    DURCHSCHNITT_3 = 0;
    _ for (i = 0; i < EINZELMESSUNGEN2; i++) {_
    DURCHSCHNITT_3 += SUM_EM_3;
    _ }_
    DURCHSCHNITT_2 /= EINZELMESSUNGEN1;
    DURCHSCHNITT_3 /= EINZELMESSUNGEN2;
    _ // Berechnung der Temperatur mit Steinhart-Hart Gleichung*
    R2_2 = FESTWIDERSTAND_2 * (1023.0 / (float)DURCHSCHNITT_2 - 1.0);
    * lnR2_2 = log(R2_2);
    TEMP_2 = (1.0 / (A_2 + B_2 * lnR2_2 + C_2 * lnR2_2 * lnR2_2 * lnR2_2)); // Steinhart-Hart Gleichung. T = 1 / {A + B[ln(R)] + C[ln(R)]^3}
    TEMP_2 = TEMP_2 - 273.15;
    R2_3 = FESTWIDERSTAND_3 * (1023.0 / (float)DURCHSCHNITT_3 - 1.0);
    lnR2_3 = log(R2_3);
    TEMP_3 = (1.0 / (A_3 + B_3 * lnR2_3 + C_3 * lnR2_3 * lnR2_3 * lnR2_3)); // Steinhart-Hart Gleichung. T = 1 / {A + B[ln(R)] + C[ln(R)]^3}
    TEMP_3 = TEMP_3 - 273.15;*

    * // Der nachfolgende Teil sendet die Daten zusätzlich über den seriellen Port.
    Serial.print("Temperatur: ");_

    Serial.print(TEMP_2); // Hier wird der Temperaturwert des Messfühlers vom Arduino an den seriellen Port gesendet.
    _ Serial.println(" °C");
    Serial.println();
    Serial.print("Temperatur2: ");_

    Serial.print(TEMP_3); // Hier wird der Temperaturwert des Messfühlers vom Arduino an den seriellen Port gesendet.
    _ Serial.println(" °C");
    Serial.println();
    // Nach 5 Sekunden Wartezeit wird eine neue Messung der Temperaturen vorgenommen.
    delay(5000);
    }
    [/quote]
    edit:
    habs mir angeschaut und den fehler wohl gefunden.
    nur leider wird aktuell doch nur ein Wert ausgespuckt.
    Temperatur : 41,02 C
    (dann leer Zeile)*

    Temperatur : 41,02 C
    werde mich dann morgen wohl nochmal ransetzen_