DS18b20 funktioniert nur unter 33 Sekunden

Ich habe noch immer ein Problem mit meiner Aquariumsteuerung.
Nach dem Neuaufbau und den Erweiterungen nach euren Angaben funktioniert fast alles einwandfrei.
Auuußer....

Die DS18b20 Messung im OneWire Betrieb.

Aber mal von vorne:
Arduino Uno R3 Clone mit zwei DS18b20 im Onewire Betrieb.
Die Fritzing-Skizze zeigt die komplette Schaltung, ich habe aber den Sketch auf den nicht funktionierenden Teil herunter gebrochen.

Folgender Fehler tritt auf:
Wenn ich den Messintervall auf größer 32767 Millis setze, funktioniert der Sketch nicht mehr.
Hat jemand einen Schimmer warum?

// Temperatursensor DS18S20
//*******************************************
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 12
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
float Toben = 0;
float Tunten = 0;
float Tobenk = 0;
float Tuntenk = 0;
unsigned long Tempmess = 0;
int Tempzeit = 32768;
bool TempM = 0;
float KorrUnten = 0;  //Sensor Korrekturwert
float KorrOben = 0;   //Sensor Korrekturwert


//*******************************************



void setup() {
sensors.begin();           // Temperatursensor DS18S20
sensors.setResolution(12); // Temperatursensor DS18S20

Serial.begin(9600);
}

void loop() {
 //*******************************************************************
// Temperatursensor DS18S20
//*******************************************************************
if(TempM == 0){  
  sensors.requestTemperatures();
  float Tobenk = (sensors.getTempCByIndex(1));
  float Tuntenk = (sensors.getTempCByIndex(0));
  Toben = Tobenk + KorrOben;
  Tunten = Tuntenk + KorrUnten;
  Tempmess = millis();
  TempM = 1;
 Serial.println(Toben);
 Serial.println(Tunten);
  }
if(millis()- Tempmess > Tempzeit){
  TempM = 0;
}

}

/edit
haut sich vor die Stirn int.....ich Vollidiot....int kann nur 32767, richtig?

nur_temp.ino (1.15 KB)

Für Zeiten immer unsigned long nehmen. Was willst du da mit einem vorzeichenbehafteten Datentyp