projet domotique (température)

Bonjour tout le monde,

j'ai un projet de domotique qui pour l'instant ce porte seulement sur la gestion de température et de thermostat.
Je simule le thermostat par l'allumage d'une led.
J'ai deux problème pour le moment:

  • le premier est en rapport avec la température, en fait j'ai réussi a envoyer la température d'une sonde a un programme en c#(windows form) tout ce passé bien avec la fonction "delay()". J'ai changer le delay par une fonction "millis()" mais maintenant l'affiche ce fais bizarrement et trop rapide. j'ai changé la vitesse de connéction mais rien ne change. voici le code:
int tempPin = 5;  // analog input
int ledState = LOW;
int ledPin = 8;  
int etatAllumer= LOW;
int allumer = 9;


void setup(void)
{
  Serial.begin(19200);
  pinMode(ledPin, OUTPUT); 
  pinMode(allumer, OUTPUT);
}

void loop(void)
{
  int tempReading;
  float temp_mV, tempC, tempF;
  unsigned long temp;

  tempReading = analogRead(tempPin);  // returns 0-1023

  temp_mV = map(tempReading, 0, 1023, 0, 5000); // convert to milliVolts

  tempC = (temp_mV - 500)/10 +3.5 ;
  tempF = 9*tempC/5 + 32;
if((millis()-temp)> 10000)
{
    Serial.print(tempC);
    Serial.print("\r");
   
    temp =millis();
}
  
  int received;                        // Variable servant à récupérer
                                       // les données reçues

  if (Serial.available()>0) {          // Si des données sont disponibles
    received = Serial.read();          // On les récupère
    if(received == 'a') {              // Si "a" est reçu
      if (ledState==HIGH)              // Et que la LED est allumée
        ledState = LOW;                // On l'éteinds
      else                             // Sinon
        ledState = HIGH;               // On l'allume

      digitalWrite(ledPin, ledState);  // Enfin on change l'état de la LED
    }
  }
  int received1;
   if (Serial.available()>0) { 
    received1 = Serial.read();
    if( received1 == 'b'){
    if( etatAllumer == HIGH)
      etatAllumer = LOW;
    else
      etatAllumer = HIGH;
    
    digitalWrite(allumer, etatAllumer);
    }
  }
  }

-Second problème, je voudrais qu'une led s'allume lors de l'ouverture du port mais cela ne fonctionne pas.

voila si vous sauriez m'aider ce serait sympa.