Bladeren bron

解决间隔发送蓝牙包时间的问题

xuxinyi 1 maand geleden
bovenliggende
commit
218972d453
2 gewijzigde bestanden met toevoegingen van 4 en 2 verwijderingen
  1. 1 1
      Core/Src/E52.c
  2. 3 1
      Core/Src/main.c

+ 1 - 1
Core/Src/E52.c

@@ -134,7 +134,7 @@ void E52_Request_Command_Fun() {
     // 修复运算符优先级警告,添加括号明确先执行位运算再比较
     if ((((uint16_t)rx_buf_uart2[6] << 8) | rx_buf_uart2[7]) != 0) {
         // 组合两个字节为16位的持续时间值
-        deviceInfo.forwardBLAndLoraDataDuration = ((uint16_t)rx_buf_uart2[5] << 8) | rx_buf_uart2[6];
+        deviceInfo.forwardBLAndLoraDataDuration = ((uint16_t)rx_buf_uart2[6] << 8) | rx_buf_uart2[7];
     } else {
         printf("扫描时间为0,默认500ms扫描时间\r\n");
         deviceInfo.forwardBLAndLoraDataDuration = 500;

+ 3 - 1
Core/Src/main.c

@@ -482,7 +482,9 @@ int main(void)
 
     if (GET_CMD( deviceInfo.commandFromCloud)  == E52_ENTER_SLEEP && deviceInfo.isOnline) {
       Enter_Sleep_ACK_Fun();
-      HAL_Delay(4000);
+      HAL_Delay(2000);
+      E104_BT5005A_SLEEP_Fun();
+      HAL_Delay(2000);
       Set_Alarm_After(deviceInfo.rtc_wake_up_time);
     }