Bläddra i källkod

[service_sw] add dry_test for bt-6710

balbekova 5 år sedan
förälder
incheckning
7be5f16a4c

+ 59 - 75
service_hw/Commands/bt_6701_commands.c

@@ -93,97 +93,81 @@ void Test_U232(void)
     TEST_SetTest(TEST_WAIT);
 }
 
-#ifdef HARDWARE_BT6703 || HARDWARE_BT6707
+#ifdef DINS_ENABLE || DOUTS_ENABLE
 /**
   * @brief  
   */
 void Test_DRY(void)
 {
     uint8_t inputState;
-#if defined HARDWARE_BT6707 
     uint8_t start_state = 0;
     uint8_t end_state = 1;
-    set_state_douts(DOUT1, 1);
-    set_state_douts(DOUT2, 1);
-    set_state_douts(DOUT3, 1);
+#ifdef DOUTS_ENABLE
+#if defined RELAY_NC 
+    start_state = 0;
+    end_state = 1;
+    for (uint8_t i = 0; i < OUTPUTS_TOTAL_COUNT; i ++) {
+      set_state_douts((DOUT1 + i), 1);
+    }
 #endif
 
-#ifdef HARDWARE_BT6703
-    uint8_t start_state = 1;
-    uint8_t end_state = 0;
+#ifdef RELAY_NO
+    start_state = 1;
+    end_state = 0;
 #endif
-    vTaskDelay(10);
-    inputState = get_state_din_outs(DIN1);
-    
-    set_state_douts(DOUT1, start_state);
-    
-    vTaskDelay(10);
-        
-    if (get_state_din_outs(DIN1) == inputState) {
-        printf("DRY FAIL\r\n");
-        TEST_SetTest(TEST_WAIT);
-        return;
-    }  
-
-    set_state_douts(DOUT1, end_state);
     
-    vTaskDelay(10);
+    for (uint8_t i = 0; i < OUTPUTS_TOTAL_COUNT; i ++) {
+      vTaskDelay(100);
+      inputState = get_state_din_outs(DIN1);
     
-    if (get_state_din_outs(DIN1) != inputState) {
-        printf("DRY FAIL\r\n");
-        TEST_SetTest(TEST_WAIT);
-        return;
-    }  
+      set_state_douts((DOUT1 + i), start_state);
+
+      vTaskDelay(100);
+          
+      if (get_state_din_outs(DIN1) == inputState) {
+          printf("DRY FAIL\r\n");
+          TEST_SetTest(TEST_WAIT);
+          return;
+      }  
+
+      set_state_douts((DOUT1 + i), end_state);
+
+      vTaskDelay(100);
+      
+      if (get_state_din_outs(DIN1) != inputState) {
+          printf("DRY FAIL\r\n");
+          TEST_SetTest(TEST_WAIT);
+          return;
+      }  
+    }
+#else
+    for (uint8_t i = 0; i < INPUTS_TOTAL_COUNT; i ++) {
+      vTaskDelay(100);
     
-    inputState = get_state_din_outs(DIN1);
-
-	set_state_douts(DOUT2, start_state);
-
-	vTaskDelay(10);
-
-	if (get_state_din_outs(DIN1) == inputState) {
-		printf("DRY FAIL\r\n");
-		TEST_SetTest(TEST_WAIT);
-		return;
-	}
-
-	set_state_douts(DOUT2, end_state);
-
-	vTaskDelay(10);
-
-	if (get_state_din_outs(DIN1) != inputState) {
-		printf("DRY FAIL\r\n");
-		TEST_SetTest(TEST_WAIT);
-		return;
-	}
-
-	vTaskDelay(10);
-#if defined HARDWARE_BT6707
-    inputState = get_state_din_outs(DIN1);
-
-	set_state_douts(DOUT3, start_state);
-
-	vTaskDelay(10);
-
-	if (get_state_din_outs(DIN1) == inputState) {
-		printf("DRY FAIL\r\n");
-		TEST_SetTest(TEST_WAIT);
-		return;
-	}
-
-	set_state_douts(DOUT3, end_state);
-
-	vTaskDelay(10);
-
-	if (get_state_din_outs(DIN1) != inputState) {
-		printf("DRY FAIL\r\n");
-		TEST_SetTest(TEST_WAIT);
-		return;
-	}
-
-	vTaskDelay(10);
+      gpio_set((DOUT1 + i), start_state);
+
+      vTaskDelay(100);
+          
+      if (get_state_din_outs((DIN1 + i)) == start_state) {
+          printf("DRY FAIL\r\n");
+          TEST_SetTest(TEST_WAIT);
+          return;
+      }  
+
+      gpio_set((DOUT1 + i), end_state);
+
+      vTaskDelay(100);
+      
+      if (get_state_din_outs((DIN1 + i)) != end_state) {
+          printf("DRY FAIL\r\n");
+          TEST_SetTest(TEST_WAIT);
+          return;
+      }  
+    }
 #endif
 
+	  vTaskDelay(100);
+
     printf("DRY OK\r\n");
     TEST_SetTest(TEST_WAIT);
 }

+ 1 - 1
service_hw/Commands/commands_api.c

@@ -141,7 +141,7 @@ void vTestCommands(void *params)
             case TEST_U232 :
                 Test_U232();
             break;
-#ifdef HARDWARE_BT6703 || HARDWARE_BT6707
+#ifdef DINS_ENABLE || DOUTS_ENABLE
             case TEST_DRY :
                 Test_DRY();
             break;

+ 1 - 1
service_hw/Commands/commands_api.h

@@ -50,7 +50,7 @@ typedef enum
 void TestProcessing(void);
 
 void Test_U232U485(void);
-#ifdef HARDWARE_BT6703 || HARDWARE_BT6707
+#ifdef DINS_ENABLE || DOUTS_ENABLE
 void Test_DRY(void);
 #endif
 void Test_U232F(void);