Quellcode durchsuchen

更换演示页时间选择样式;蓝牙调试添加打印;演示页增加ModBus初始化和结束

Frankensteinly vor 1 Jahr
Ursprung
Commit
6b6a2ab208

+ 23 - 0
app/src/main/java/com/grkj/iscs/ble/BleCmdManager.kt

@@ -215,6 +215,17 @@ object BleCmdManager {
     private fun handleCurrentStatus(byteArray: ByteArray) {
         LogUtil.i("handleCurrentStatus : ${byteArray.toHexStrings()}")
         val job = byteArray[4]
+        when (job) {
+            0x01.toByte() -> {
+                println("工作模式")
+            }
+            0x02.toByte() -> {
+                println("待机模式")
+            }
+            0x03.toByte() -> {
+                println("故障状态")
+            }
+        }
     }
 
     /**
@@ -295,6 +306,18 @@ object BleCmdManager {
         LogUtil.i("handlePowerStatus : ${byteArray.toHexStrings()}")
         val bat = byteArray[4].toInt()
         val chg = byteArray[5]
+        println("钥匙电量 : $bat%")
+        when (chg) {
+            0x01.toByte() -> {
+                println("充电状态:未充电")
+            }
+            0x02.toByte() -> {
+                println("充电状态:充电中")
+            }
+            0x03.toByte() -> {
+                println("充电状态:充满")
+            }
+        }
     }
 
     /**

+ 10 - 2
app/src/main/java/com/grkj/iscs/presentation/PresentationActivity.kt

@@ -4,6 +4,7 @@ import android.os.Environment
 import android.view.Gravity
 import com.grkj.iscs.base.BaseMvpActivity
 import com.grkj.iscs.databinding.ActivityPresentationBinding
+import com.grkj.iscs.modbus.ModBusController
 import com.grkj.iscs.util.FileUtil
 import com.grkj.iscs.widget.SelectableInput
 import com.manu.mdatepicker.MDatePicker
@@ -47,6 +48,8 @@ class PresentationActivity :
     }
 
     override fun initView() {
+        presenter?.initModbus()
+
         val path =
             Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).absolutePath + "/presentation/presentation.txt"
         val str = FileUtil.readTxt(path)
@@ -76,7 +79,7 @@ class PresentationActivity :
         mBinding?.tvStartTime?.setOnClickListener {
             MDatePicker.create(this)
                 .setCanceledTouchOutside(true)
-                .setGravity(Gravity.BOTTOM)
+                .setGravity(Gravity.CENTER)
                 .setSupportTime(true)
                 .setTwelveHour(false)
                 .setOnDateResultListener {
@@ -88,7 +91,7 @@ class PresentationActivity :
         mBinding?.tvEndTime?.setOnClickListener {
             MDatePicker.create(this)
                 .setCanceledTouchOutside(true)
-                .setGravity(Gravity.BOTTOM)
+                .setGravity(Gravity.CENTER)
                 .setSupportTime(true)
                 .setTwelveHour(false)
                 .setOnDateResultListener {
@@ -105,4 +108,9 @@ class PresentationActivity :
     override fun initPresenter(): PresentationPresenter {
         return PresentationPresenter()
     }
+
+    override fun onDestroy() {
+        super.onDestroy()
+        ModBusController.stop()
+    }
 }

+ 12 - 1
app/src/main/java/com/grkj/iscs/presentation/PresentationPresenter.kt

@@ -1,5 +1,16 @@
 package com.grkj.iscs.presentation
 
 import com.grkj.iscs.base.BasePresenter
+import com.grkj.iscs.modbus.ModBusController
 
-class PresentationPresenter : BasePresenter<IPresentationView>() {}
+class PresentationPresenter : BasePresenter<IPresentationView>() {
+    fun initModbus() {
+        ModBusController.setSlaveCount(1)
+        ModBusController.interruptReadTrashBinStatus(false)
+        ModBusController.start(mContext!!)
+        ModBusController.unregisterListener(mContext!!)
+
+
+        ModBusController.initDevicesStatus()
+    }
+}