添加写号后的关机
authorSnickerSun <snickersun@163.com>
Thu, 21 Nov 2024 15:25:21 +0000 (23:25 +0800)
committerSnickerSun <snickersun@163.com>
Thu, 21 Nov 2024 15:25:21 +0000 (23:25 +0800)
mainwindow.cpp
mainwindow.ui
settings.h

index 149a7ce..87258c7 100644 (file)
@@ -76,7 +76,7 @@ void MainWindow::readData1()
     if (uart_rx_flag1)\r
     {//指令下达完毕,开始接收数据\r
         uart_rx_buff_array1.append(data);\r
-        if (uart_rx_buff_array1.indexOf("OK~")>0)\r
+        if (uart_rx_buff_array1.indexOf("OK~")>=0 || uart_rx_buff_array1.indexOf("power off device!")>=0)\r
         {\r
             uart_rx_flag1 = false;\r
             uart_process1();//开始处理当前指令结果\r
@@ -114,6 +114,11 @@ void MainWindow::readData1()
                 this->uart_send_data1(ATCMD_GET_CPUID);\r
             }\r
                 break;\r
+            case 5:\r
+            {\r
+                this->uart_send_data1(ATCMD_POWEROFF);\r
+            }\r
+                break;\r
             default:\r
             {\r
                 cmd_index_1=-1;\r
@@ -315,7 +320,7 @@ void MainWindow::uart_process1()
     {\r
         //检查当前的号是否已经是写过的号,放置重复写号造成的浪费。\r
         int ret =  uart_rx_buff_array1.indexOf(tr("28*****"));\r
-        if (ret > 0)\r
+        if (ret >= 0)\r
         {\r
              QString unit="281106"+uart_rx_buff_array1.mid(ret+7,6);\r
              bool mac_used=settings::getInstance().getMacUsed(unit.toUpper());\r
@@ -345,7 +350,7 @@ void MainWindow::uart_process1()
 //        local_addr : 28*****010101\r
         QString unit=ui->ledit_spp_addr_1->text();\r
         int ret =  uart_rx_buff_array1.indexOf(tr("28*****"));\r
-        if (ret > 0)\r
+        if (ret >= 0)\r
         {\r
              QString unit_watch="281106"+uart_rx_buff_array1.mid(ret+7,6);\r
              qDebug()<<unit_watch;\r
@@ -371,7 +376,7 @@ void MainWindow::uart_process1()
     {\r
         int ret =  uart_rx_buff_array1.indexOf("[soc id:]");\r
         {\r
-            if (ret > 0 )\r
+            if (ret >= 0 )\r
             {\r
                 if (uart_rx_buff_array1.size()-ret >84){\r
                   QString cpu_id=uart_rx_buff_array1.mid(ret+9,84).replace("\r\n","").replace("0x","").replace(" ","");\r
@@ -381,19 +386,32 @@ void MainWindow::uart_process1()
                   if (ret == 1)\r
                   {\r
                       ui->textBrowser_result->setText(settings::getInstance().getmacStatusFull());\r
-                      ui_show_result(QString::fromLocal8Bit("设置mac成功"),true);\r
+                      ui_display1(QString::fromLocal8Bit("设置mac成功\r\n"),LOG_DIRECT_IN);\r
                   }else{\r
-                      ui_show_result(QString::fromLocal8Bit("获取cpuid失败"),false);\r
-                  }\r
-\r
+                      ui_show_result(QString::fromLocal8Bit("获取cpuid失败\r\n"),false);\r
+                  }                  \r
                 }\r
-                waiting_cmd1 = false;\r
+\r
             }else{\r
                  ui_display1(QString::fromLocal8Bit("获取cpuid失败\r\n"),LOG_DIRECT_OUT);\r
                  cmd_index_1 = -4;\r
-                 ui_show_result(QString::fromLocal8Bit("获取cpuid失败"),false);\r
+                 ui_show_result(QString::fromLocal8Bit("获取cpuid失败\r\n"),false);\r
             }\r
         }\r
+    }\r
+        break;\r
+    case 5:\r
+    {\r
+        int ret =  uart_rx_buff_array1.indexOf("power off device");\r
+        if (ret >= 0 )\r
+        {\r
+            ui_display1(QString::fromLocal8Bit("关机成功\r\n"),LOG_DIRECT_IN);\r
+//            waiting_cmd1 = false;\r
+        }else{\r
+            ui_display1(QString::fromLocal8Bit("关机失败\r\n"),LOG_DIRECT_OUT);\r
+        }\r
+        ui_show_result(QString::fromLocal8Bit("设置mac成功\r\n"),true);\r
+\r
     }\r
         break;\r
     default:\r
index 2f9ef39..78b217a 100644 (file)
@@ -18,7 +18,7 @@
    </font>\r
   </property>\r
   <property name="windowTitle">\r
-   <string>BTMacWriteTool V1.1</string>\r
+   <string>BTMacWriteTool V1.2</string>\r
   </property>\r
   <property name="windowIcon">\r
    <iconset>\r
index bf803e6..bc65ae4 100644 (file)
@@ -42,7 +42,6 @@ OK~
 \r
 OK~\r
 \r
-\r
 */\r
 #define ATCMD_SET_MAC "AT^BTADDR=%1 6\r\n"\r
 /*gap_scan_mode_changed_callback mode: 4\r
@@ -89,6 +88,12 @@ AT^PMADDVOTE
 MCU SLEEP SUCCESS\r
 OK~\r
 */\r
+\r
+#define ATCMD_POWEROFF "AT^POWEROFF\r\n"\r
+/*\r
+» AT^POWEROFF\r
+« power off device!\r
+*/\r
 #define MAC_LEN 12\r
 class settings : public QObject\r
 {\r