xuxinyi vor 1 Monat
Ursprung
Commit
16897b1e1f
2 geänderte Dateien mit 13 neuen und 13 gelöschten Zeilen
  1. 8 11
      blScan/ble_scan_data.lua
  2. 5 2
      timer_app.lua

+ 8 - 11
blScan/ble_scan_data.lua

@@ -26,17 +26,14 @@ local function ble_callback(ble_device, ble_event, ble_param)
     if ble_event == ble.EVENT_SCAN_INIT then
         log.info("ble", "scan init")
     elseif ble_event == ble.EVENT_SCAN_REPORT then
-        if #blDataTable < 20 then
-            log.info("信息采集中")
-            blDataTable[#blDataTable + 1] = ble_param.adv_addr:toHex()  -- 插入字符串
+        if #blDataTable < 40 then
+            --log.info("信息采集中")
+            blDataTable[#blDataTable + 1] = ble_param.adv_addr:toHex() -- 插入字符串
         else
-            log.info("信息输出中")
-            local json_data = json.encode(blDataTable)
-            log.info("json", json_data)
-
-            ---- 发布消息通知其他模块
-            --sys.publish("BLE_SCAN_DONE")
-
+            --log.info("信息输出中")
+            --local json_data = json.encode(blDataTable)
+            --log.info("json", json_data)
+            ble_device:scan_stop()
         end
         log.info("ble", "scan report", ble_param.rssi, ble_param.adv_addr:toHex(), ble_param.data:toHex())
         -- 解析广播数据, 日志很多, 按需使用
@@ -68,7 +65,7 @@ function ble_scan()
     sys.wait(100)
     -- 扫描模式
     sys.wait(1000)
-    ble_device:scan_create(0,1000,100) -- 使用默认参数, addr_mode=0, scan_interval=100, scan_window=100
+    ble_device:scan_create(0,100,100) -- 使用默认参数, addr_mode=0, scan_interval=100, scan_window=100
     -- ble_device:scan_create(0, 10, 10) -- 使用自定义参数
     sys.wait(100)
     log.info("开始扫描")

+ 5 - 2
timer_app.lua

@@ -45,13 +45,16 @@ sys.taskInit(function()
     --sys.wait(20000)
     sys.waitUntil("IP_IS_READY")
     while true do
-        if #blDataTable >= 20 then
+        if #blDataTable >= 40 then
             local payload = json.encode(blDataTable)
             log.info("timer_app", "payload", payload)
             sys.publish("SEND_DATA_REQ","timer",mobile.imei().."/timer/up",payload,0,nil)
             blDataTable = {}
+            sys.wait(100)
+            log.info("开始扫描")
+            ble_device:scan_start()
         end
-        sys.wait(1000)
+        sys.wait(5000)
     end
 end)