소스 검색

后台控制蓝牙数据发送

xuxinyi 2 달 전
부모
커밋
9d66615396
2개의 변경된 파일12개의 추가작업 그리고 2개의 파일을 삭제
  1. 7 1
      Core/Src/E52.c
  2. 5 1
      Core/Src/main.c

+ 7 - 1
Core/Src/E52.c

@@ -99,7 +99,13 @@ void E52_Analyze_Data() {
     // uint16_t received_len = sizeof(rx_buf_uart2) - __HAL_DMA_GET_COUNTER(huart2.hdmarx);
     printf("loraDeviceAddress: 0x%02X 0x%02X\r\n", deviceInfo.loraDeviceAddress_H,deviceInfo.loraDeviceAddress_L);
     if (rx_buf_uart2[0] == 0x55 && rx_buf_uart2[1] == 0xBB) {
-        printf("The data is command\r\n");
+        // printf("The data is command\r\n");
+        printf("开启发送蓝牙数据\r\n");
+        deviceInfo.sendBlDataFlag = 1;
+    }else if (rx_buf_uart2[0] == 0x55 && rx_buf_uart2[1] == 0xAA) {
+        // printf("The data is command\r\n");
+        printf("关闭发送蓝牙数据\r\n");
+        deviceInfo.sendBlDataFlag = 0;
     }else if (strncmp((char *)rx_buf_uart2, "SUCCESS", 7) == 0) {
         printf("The data is a callback\r\n");
     }else if (rx_buf_uart2[0] == 'A' && rx_buf_uart2[1] == 'T') {

+ 5 - 1
Core/Src/main.c

@@ -221,7 +221,7 @@ int main(void)
 
   /* Infinite loop */
   /* USER CODE BEGIN WHILE */
-  deviceInfo.sendBlDataFlag = 1;
+  // deviceInfo.sendBlDataFlag = 1;
   while (1)
   {
     /* USER CODE END WHILE */
@@ -303,6 +303,10 @@ int main(void)
       // HAL_UART_Transmit(&huart2, (uint8_t *)end_msg, strlen(end_msg), HAL_MAX_DELAY);
       // HAL_Delay(1000);
     // }
+    if (newLoraDataFlag == 1) {
+      E52_Analyze_Data();
+      newLoraDataFlag = 0;//重置状态
+    }
   }
   /* USER CODE END 3 */
 }