diff --git a/app/build.gradle b/app/build.gradle
index 30ac887..d18e5b5 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -49,6 +49,9 @@ dependencies {
     implementation project(path: ':library-serialPort')
     //添加excel
     implementation rootProject.ext.dependencies.jxl
+    // 时间日期选择控件
+    implementation 'com.github.loper7:DateTimePicker:0.6.3'
+
     implementation 'com.google.android.material:material:1.5.0'
     annotationProcessor 'androidx.lifecycle:lifecycle-compiler:2.0.0'
 }
diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/App.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/App.kt
index 39ae7ad..86881b2 100644
--- a/app/src/main/java/com/yinuo/safetywatcher/watcher/App.kt
+++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/App.kt
@@ -8,6 +8,6 @@ class App : Application() {
 
     override fun onCreate() {
         super.onCreate()
-//        LztekUtil.setObject(Lztek.create(this))
+        LztekUtil.setObject(Lztek.create(this))
     }
 }
\ No newline at end of file
diff --git a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/TimeSettingActivity.kt b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/TimeSettingActivity.kt
index eeedfff..87d0c83 100644
--- a/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/TimeSettingActivity.kt
+++ b/app/src/main/java/com/yinuo/safetywatcher/watcher/ui/TimeSettingActivity.kt
@@ -5,6 +5,9 @@ import com.yinuo.safetywatcher.R
 import com.yinuo.safetywatcher.databinding.ActivitySensorBinding
 import com.yinuo.safetywatcher.databinding.ActivityTimeSettingBinding
 import com.yinuo.safetywatcher.watcher.base.NoOptionsActivity
+import com.yinuo.safetywatcher.watcher.utils.LztekUtil
+import java.text.SimpleDateFormat
+import java.util.Locale
 
 class TimeSettingActivity : NoOptionsActivity() {
 
@@ -12,6 +15,12 @@ class TimeSettingActivity : NoOptionsActivity() {
         ActivityTimeSettingBinding.inflate(layoutInflater)
     }
 
+    private val timeFormater by lazy {
+        SimpleDateFormat("yyyy.MM.dd HH:mm", Locale.ROOT)
+    }
+
+    private var changeTime = -1L;
+
     override fun getTopBarTitle(): String? {
         return getString(R.string.time_setting)
     }
@@ -21,5 +30,27 @@ class TimeSettingActivity : NoOptionsActivity() {
     }
 
     override fun initView() {
+        // 初始化默认时间
+        val time = System.currentTimeMillis()
+        setShowTime(time)
+
+        mBingding.picker.setOnDateTimeChangedListener {
+            changeTime = it
+        }
+
+        mBingding.tvCancel.setOnClickListener {
+            onBackPressed()
+        }
+        mBingding.tvConfirm.setOnClickListener {
+            if (changeTime > 0) {
+                LztekUtil.getLztek().setSystemTime(changeTime)
+            }
+            onBackPressed()
+        }
+    }
+
+    fun setShowTime(time: Long) {
+        mBingding.picker.setDefaultMillisecond(System.currentTimeMillis())
+        mBingding.tvTime.text = timeFormater.format(time)
     }
 }
\ No newline at end of file
diff --git a/app/src/main/res/drawable/datepicker_bg.xml b/app/src/main/res/drawable/datepicker_bg.xml
new file mode 100644
index 0000000..16a04da
--- /dev/null
+++ b/app/src/main/res/drawable/datepicker_bg.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+    <solid android:color="@color/_202A45" />
+    <corners android:radius="@dimen/_20dp" />
+</shape>
\ No newline at end of file
diff --git a/app/src/main/res/drawable/white_rectangle.xml b/app/src/main/res/drawable/white_rectangle.xml
new file mode 100644
index 0000000..e5adbe7
--- /dev/null
+++ b/app/src/main/res/drawable/white_rectangle.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+
+    <solid android:color="#ffffffff" />
+</shape>
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_time_setting.xml b/app/src/main/res/layout/activity_time_setting.xml
index d829e29..08fa082 100644
--- a/app/src/main/res/layout/activity_time_setting.xml
+++ b/app/src/main/res/layout/activity_time_setting.xml
@@ -1,7 +1,97 @@
 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:orientation="vertical"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
-    android:layout_height="match_parent">
+    android:layout_height="match_parent"
+    android:gravity="center_horizontal"
+    android:orientation="vertical">
 
+    <androidx.constraintlayout.widget.ConstraintLayout
+        android:layout_width="@dimen/_960dp"
+        android:layout_height="@dimen/_580dp"
+        android:layout_marginTop="@dimen/_201dp"
+        android:background="@drawable/warn_setting_btn_bg">
+
+        <View
+            android:id="@+id/divider"
+            android:layout_width="@dimen/_6dp"
+            android:layout_height="@dimen/_28dp"
+            android:layout_marginStart="@dimen/_40dp"
+            android:background="@drawable/white_rectangle"
+            app:layout_constraintBottom_toTopOf="@id/tv_cancel"
+            app:layout_constraintStart_toStartOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <TextView
+            android:id="@+id/tv_currentTime"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginStart="@dimen/_6dp"
+            android:text="@string/current_time"
+            android:textColor="@color/white"
+            android:textSize="@dimen/_30dp"
+            app:layout_constraintBottom_toTopOf="@id/tv_cancel"
+            app:layout_constraintStart_toEndOf="@id/divider"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <TextView
+            android:id="@+id/tv_time"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginTop="@dimen/_6dp"
+            android:text="2023.5.31"
+            android:textColor="@color/white"
+            android:textSize="@dimen/_30dp"
+            app:layout_constraintStart_toStartOf="@id/tv_currentTime"
+            app:layout_constraintTop_toBottomOf="@id/tv_currentTime" />
+
+
+        <com.loper7.date_time_picker.DateTimePicker
+            android:id="@+id/picker"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_centerVertical="true"
+            android:paddingHorizontal="@dimen/_40dp"
+            android:paddingVertical="@dimen/_66dp"
+            android:background="@drawable/datepicker_bg"
+            android:layout_marginEnd="@dimen/_40dp"
+            app:dt_dividerColor="#00000000"
+            app:dt_layout="@layout/layout_date_picker_globalization1"
+            app:dt_normalTextSize="@dimen/_28dp"
+            app:dt_selectTextSize="@dimen/_30dp"
+            app:dt_selectedTextBold="true"
+            app:dt_showLabel="true"
+            app:dt_textBold="true"
+            app:dt_textColor="@color/color_offline"
+            app:dt_themeColor="@color/white"
+            app:layout_constraintBottom_toTopOf="@id/tv_confirm"
+            app:layout_constraintEnd_toEndOf="parent"
+            app:layout_constraintTop_toTopOf="parent" />
+
+        <TextView
+            android:id="@+id/tv_cancel"
+            android:layout_width="@dimen/_480dp"
+            android:layout_height="@dimen/_81dp"
+            android:background="@drawable/cancel_btn_bg"
+            android:gravity="center"
+            android:text="@string/cancel"
+            android:textColor="@color/white_30"
+            android:textSize="@dimen/_36dp"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintStart_toStartOf="parent" />
+
+        <TextView
+            android:id="@+id/tv_confirm"
+            android:layout_width="@dimen/_480dp"
+            android:layout_height="@dimen/_81dp"
+            android:layout_alignParentEnd="true"
+            android:layout_alignParentBottom="true"
+            android:background="@drawable/confirm_btn_bg"
+            android:gravity="center"
+            android:text="@string/confirm"
+            android:textColor="@color/white"
+            android:textSize="@dimen/_36dp"
+            app:layout_constraintBottom_toBottomOf="parent"
+            app:layout_constraintEnd_toEndOf="parent" />
+    </androidx.constraintlayout.widget.ConstraintLayout>
 </LinearLayout>
\ No newline at end of file
diff --git a/app/src/main/res/layout/layout_date_picker_globalization1.xml b/app/src/main/res/layout/layout_date_picker_globalization1.xml
new file mode 100644
index 0000000..788e830
--- /dev/null
+++ b/app/src/main/res/layout/layout_date_picker_globalization1.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8"?>
+<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:layout_gravity="center"
+    android:orientation="horizontal">
+
+    <com.loper7.date_time_picker.number_picker.NumberPicker
+        android:id="@+id/np_datetime_year"
+        android:layout_width="@dimen/_121dp"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toStartOf="parent"
+        app:layout_constraintTop_toTopOf="parent"
+        app:np_dividerColor="#00000000"
+        app:np_dividerThickness="0.6dp"
+        app:np_wheelItemCount="5" />
+
+    <com.loper7.date_time_picker.number_picker.NumberPicker
+        android:id="@+id/np_datetime_month"
+        android:layout_width="@dimen/_90dp"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toEndOf="@+id/np_datetime_year"
+        app:layout_constraintTop_toTopOf="parent"
+        app:np_dividerColor="#00000000"
+        app:np_dividerThickness="0.6dp"
+        app:np_wheelItemCount="5" />
+
+    <com.loper7.date_time_picker.number_picker.NumberPicker
+        android:id="@+id/np_datetime_day"
+        android:layout_width="@dimen/_90dp"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toEndOf="@+id/np_datetime_month"
+        app:layout_constraintTop_toTopOf="parent"
+        app:np_dividerColor="#00000000"
+        app:np_dividerThickness="0.6dp"
+        app:np_wheelItemCount="5" />
+
+    <com.loper7.date_time_picker.number_picker.NumberPicker
+        android:id="@+id/np_datetime_hour"
+        android:layout_width="@dimen/_90dp"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="16dp"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toEndOf="@+id/np_datetime_day"
+        app:layout_constraintTop_toTopOf="parent"
+        app:np_dividerColor="#00000000"
+        app:np_dividerThickness="0.6dp"
+        app:np_wheelItemCount="5" />
+
+    <TextView
+        android:layout_width="4dp"
+        android:layout_height="wrap_content"
+        android:text=":"
+        android:textColor="#999999"
+        android:textSize="16sp"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintEnd_toStartOf="@+id/np_datetime_minute"
+        app:layout_constraintStart_toEndOf="@+id/np_datetime_hour"
+        app:layout_constraintTop_toTopOf="parent" />
+
+    <com.loper7.date_time_picker.number_picker.NumberPicker
+        android:id="@+id/np_datetime_minute"
+        android:layout_width="@dimen/_90dp"
+        android:layout_height="wrap_content"
+        app:layout_constraintBottom_toBottomOf="parent"
+        app:layout_constraintStart_toEndOf="@+id/np_datetime_hour"
+        app:layout_constraintTop_toTopOf="parent"
+        app:np_dividerColor="#00000000"
+        app:np_dividerThickness="0.6dp"
+        app:np_wheelItemCount="5" />
+</androidx.constraintlayout.widget.ConstraintLayout>
\ No newline at end of file
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index ae94474..78eee84 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -18,6 +18,7 @@
     <color name="_2A4284_30">#4C2A4284</color>
     <color name="_842A2A">#842A2A</color>
     <color name="_505971">#505971</color>
+    <color name="_202A45">#202A45</color>
 
     <color name="color_ok">#01E41C</color>
     <color name="color_offline">#999999</color>
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 6e17cda..2133bf9 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -53,4 +53,8 @@
     <dimen name="_630dp">630px</dimen>
     <dimen name="_81dp">81px</dimen>
     <dimen name="_480dp">480px</dimen>
+    <dimen name="_800dp">800px</dimen>
+    <dimen name="_6dp">6px</dimen>
+    <dimen name="_28dp">28px</dimen>
+    <dimen name="_580dp">580px</dimen>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 63e3689..58ce3a5 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -36,6 +36,7 @@
     <string name="sensor_type_txt">传感器种类</string>
     <string name="cancel">取消</string>
     <string name="confirm">确认</string>
+    <string name="current_time">当前时间</string>
 
     <string-array name="excel_column">
         <item>时间</item>