Robofun 機器人論壇

標題: 問題請教 設計一個溫度顯示器 HOLD住最高溫 [打印本頁]

作者: aagnesb    時間: 2013-3-1 20:44
標題: 問題請教 設計一個溫度顯示器 HOLD住最高溫
本帖最後由 aagnesb 於 2013-3-1 20:47 編輯

小弟程度不是很好 麻煩各位大哥提點一下

使用DS18B20溫度感測器 與 LCD_1602_I2C做為顯示螢幕
將當前溫度拆成整數與小數存入EEPROM中
並比較當前溫度與EEPROM的溫度 若當前溫度較高則更新EEPROM中的數據

判斷溫度部分的程式碼 麻煩大家幫我找看看問題在哪

  if (celsius > a)                                         //如果當前溫度(整數) > EEPROM中的最高溫(整數)
  
  {
     EEPROM.write(address, celsius);
    a = EEPROM.read(address);
    EEPROM.write(address2, celsius2);
    b = EEPROM.read(address2);
  }
  
  if (celsius = a && celsius2 > b)        //當前溫度(整數) = EEPROM中的最高溫(整數) AND當前溫度(小數) = EEPROM中的最高溫(小數)
  
  {

      EEPROM.write(address, celsius);
      a = EEPROM.read(address);
      EEPROM.write(address2, celsius2);
      b = EEPROM.read(address2);

  }

這樣寫的話 會有問題 如:當最高溫為26.55時  溫度若繼續下降至25.92  最高溫就會被刷掉為25.92
應該是if (celsius = a && celsius2 > b) 這邊的問題 但是不知道問題在哪 麻煩大家囉
作者: alibuda174    時間: 2013-3-5 23:37
從你的程式看不出問題耶。
作者: alibuda174    時間: 2013-3-31 11:40
你的if (celsius = a && celsius2 > b)
是不是該寫成if (celsius == a && celsius2 > b) ?
作者: aagnesb    時間: 2013-4-11 22:04
回復 3# alibuda174


沒錯 就是你說的那裡 感謝囉




歡迎光臨 Robofun 機器人論壇 (https://robofun.net/forum/) Powered by Discuz! X3.2