2017-09-09 51 views
0

您好我有晴雨表MS5611的我有問題,使平均數晴雨表for循環中第3次加

的開始,我試圖使之與100個的數字,但有些我怎麼弄飼料喙錯誤一些如何加入我的答案只有在第三次

​​

我的輸出

0.00 
0.00 
0.00 
0.00 
973.84 
973.84 
973.84 
1947.69 
1947.69 
1947.69 
2921.57 
2921.57 
2921.57 
+0

您確定這是C代碼? (這是可能的,但不大可能) –

+1

由於氣壓讀數單元,不會收集數據一樣快,你可以輪詢?喜歡「飼料喙」。 –

+0

天氣風向標看起來不錯。在測量完成之前,您會得到零值,然後是一個正確的值,這看起來很穩定。讀取它重置,你會得到另一組零。所以看起來你可以進行輪詢(可能較慢),直到你得到非零值。然後在計算中使用該有效值。 – Yunnosch

回答

0

代碼看起來OK ......假設你是在進入循環之前清除「PRESSION」變量,我們升在這個(http://www.te.com/commerce/DocumentDelivery/DDEController?Action=showdoc&DocId=Data+Sheet%7FMS5611-01BA03%7FB2%7Fpdf%7FEnglish%7FENG_DS_MS5611-01BA03_B2.pdf%7FCAT-BLPS0036)上打個招呼。沒有顯示的可能是這個問題。我會後退一步,查詢溫度傳感器而不是壓力。作爲初始化的一部分,請考慮發出軟復位信號,我希望你的問題不在這裏,但是在你的低層代碼中,它實際上是從SPI(或I2C)端口寫入和讀取數據。你的延遲不應該在這裏,但它應該在開始轉換和讀取數據的命令之間。觀看SDO線路以查看轉換完成時間,並在出現問題時有10到15ms的備份超時時間。確保底層的代碼是防彈的,然後擔心這個上層代碼。