Просмотр исходного кода

极端情况下数据溢出导致的光照出现负值

Signed-off-by: 孟巍 <7897852+mei_gitee@user.noreply.gitee.com>
孟巍 3 лет назад
Родитель
Сommit
0ca954444d
1 измененных файлов с 2 добавлено и 1 удалено
  1. 2 1
      script/libs/bh1750/bh1750.lua

+ 2 - 1
script/libs/bh1750/bh1750.lua

@@ -91,7 +91,8 @@ log.info("bh1750_read_light", bh1750_data)
 ]]
 function bh1750.read_light()
     bh1750_set_measure_mode(BH1750_CON_H_RES_MODE, 180)
-    local _,light = pack.unpack(i2c_recv(2),">h")
+    -- local _,light = pack.unpack(i2c_recv(2),">h") -- 极端情况下数据溢出导致的光照出现负值, 如string.toHex(i2c_recv(2)) == "FFFF"
+    local _,light = pack.unpack(i2c_recv(2),">H")
     return light / 1.2
 end