2017-04-14 13 views
-4

ここでヘルプを求めている以外のオプションは開いていません。私の問題は何ですか?まず第一に、私はルーキー、実際にはC++に関する最初の新人です。私は、このセクション持ちのArduinoプロジェクトで"奇妙な"動作変数...

//... 

    struct package 
    { 
     float temperature ; 
     float humidity ; 
    }; 
//... 
    float remoteTemperature = 0,0; 
    float previousRemoteTemperature = 0.1; 
    int Temp1 = 0; 
    int min_Temp1 = 500; 
    int max_Temp1 = -500; 
    void printRemoteTemperature() 
    { 
     String temperature; 
     if(remoteTemperature != previousRemoteTemperature) 
     { 
     if(remoteHumidity == 0.0 && remoteTemperature == 0.0) //We just booted up 
     { 
      temperature = "---"; 
     }else 
     { 
      temperature = String (remoteTemperature,1); 
     } 
     tft.print(temperature); 
     previousRemoteTemperature = remoteTemperature; 
     Temp1 = (remoteTemperature); 
     if (Temp1 >= max_Temp1) { max_Temp1 = Temp1; } 
     if (Temp1 <= min_Temp1) { min_Temp1 = Temp1; } 

     tft.print(min_Temp1); 

     tft.print(max_Temp1); 
     } 
    } 

すべて(この場合の最大温度)は常に0である最低温度、除いて、正常に動作します...

を任意のヘルプ感謝して受け入れられるだろう。

+1

問題をより明確に説明する必要があります。コンパイルに問題がありますか、または論理エラーがありますか? –

+0

@Henriはその変数ではありません: "int min_Temp1 = 500;"?あなたの速い応答のためにありがとう –

+0

申し訳ありませんが、これを正しく使用することを学ぶ... –

答えて

0

あなたは値が実際にどこから来ているのかは言わないが、私は推測してみよう。

// We just booted upとコメントされている文章は、温度がゼロになるという点があると私に信じています。その場合、ディスプレイを特別な値("---")に設定しますが、残りの機能は実行されます。したがって、min_Tempは最初は0になります。 0より小さい温度値が入力されない場合は、最小値のままです。

+0

THNXが多いので、データを受信する前に遅延が発生する可能性がありますか?特別な値( "---")セクションを削除しますか? –

0

IhanxからIonutへ:min_Temp1 = 543という行を追加しました。 min/maxルーチンの前に、ケースを解決しました。もう一度キーボードの後ろにいる幸せな人。