a.binder 5 роки тому
батько
коміт
425f30a1d1

+ 4 - 4
SE/stuff/P5_Automation_can-dev-res/P5_Automation_can-dev-res.ino

@@ -244,7 +244,7 @@
  #include "_Port_Broadcast_state_struct.h"
  #include "_Port_I2C_driver_struct.h"
  #include "_Slave_Ports_Status_struct.h"
- #include "_Slave_Ports_Protocol_CAN_struct.h"
+ #include "_CAN/_Slave_Ports_Protocol_CAN_struct.h"
  
  #if defined(HAS_TFT_ILI9163C)
   #include "_TFT_ILI9163C_func.h"
@@ -493,8 +493,8 @@ void setup() {  //REMEMBER NOT INITIALIZE ANY VARIABLES OR ARRAYS
 
 
 void loop() {
-
-
+register long time;
+  time = millis();
 #include "___loop/___loop_init.h"
  
 #if defined(HAS__PCINT_setup)
@@ -508,7 +508,7 @@ void loop() {
 #endif
  
 
-  time = millis();
+
 
     #ifdef DISABLE_LOOP 
         #include "___DEBUG/___DEBUG_DISABLE_LOOP.h"

+ 22 - 21
SE/stuff/P5_Automation_can-dev-res/_CAN/_CAN_func.h

@@ -1,26 +1,27 @@
 void CAN_READ() {
-    if(!digitalRead(CAN_INTpin))                    // If pin 2 is low, read receive buffer
-          {
-            CAN0.readMsgBuf(&CANrxId, &CANlen, CANrxBuf); // Read data: len = data length, buf = data byte(s)
-            Serial.print("#5555CAN_READ read ID: ");
-            Serial.print(CANrxId, HEX);
-            Serial.print(" Data: ");
-          
-            for(int i = 0; i<CANlen; i++)           // Print each byte of the data
+          // If pin 2 is low, read receive buffer
             {
-              if(CANrxBuf[i] < 0x10)                // If data byte is less than 0x10, add a leading zero
+              CAN0.readMsgBuf(&CANrxId, &CANlen, CANrxBuf); // Read data: len = data length, buf = data byte(s)
+              Serial.print("#5555CAN_READ read ID: ");
+              Serial.print(CANrxId, HEX);
+              Serial.print(" Data: [");Serial.print(CANlen); Serial.print("]"); 
+            
+              for(int i = 0; i<CANlen; i++)           // Print each byte of the data
               {
-                Serial.print("0");
-         
-              }
-              Serial.print(CANrxBuf[i], HEX);
-              Serial.print(" ");
-          
-               
-            }
-            Serial.println();
-
+                if(CANrxBuf[i] < 0x10)                // If data byte is less than 0x10, add a leading zero
+                {
+                  Serial.print("0");
+           
+                }
+                Serial.print(CANrxBuf[i], HEX);
+                Serial.print(" ");
             
-          } else Serial.println(" [CAN] [NOT][digitalRead(CAN_INTpin)] ");
-
+                 
+              }
+              Serial.println();
+  
+              
+         //   else Serial.println(" [CAN] [NOT][digitalRead(CAN_INTpin)] ");
+    
+          }
     }

+ 3 - 0
SE/stuff/P5_Automation_can-dev-res/_Slave_Ports_Protocol_CAN_struct.h → SE/stuff/P5_Automation_can-dev-res/_CAN/_Slave_Ports_Protocol_CAN_struct.h

@@ -167,6 +167,9 @@ void CAN_MSG8_A_ptr(_Slave_Ports_Protocol_CAN_broadcast_T
 
 
 
+
+
+
 void CAN_data_debug(byte data[8]) {
     int i;
     Serial.print("#102 CAN_data_debug   [  ");

+ 4 - 2
SE/stuff/P5_Automation_can-dev-res/_DISPLAY_func.h

@@ -163,7 +163,9 @@ void DISPLAY__print_IMMEDIATE(
                                  Serial.println("]  ");
                          #endif    
                          
-                         
+                    #if defined(DISABLE_TASK_TYPE_T_DISPLAY_queue_pop________)
+                     Serial.print("#167 DISABLE_TASK_TYPE_T_DISPLAY_queue_pop________");
+                    #else     
                       DISPLAY__add_record(  DISPLAY_A ,
                              DISPLAY_T_ARDUINO_ATTR_ARRAY_A , 
                              DISPLAY_PHYSICAL_CHAR_A, 
@@ -177,7 +179,7 @@ void DISPLAY__print_IMMEDIATE(
                              TASK_TYPE_A,
                              TASK_PORT_ASSOC_A
                          ) ;
-                         
+                      #endif 
                     }
 }
 

+ 1 - 1
SE/stuff/P5_Automation_can-dev-res/___CONFIG/0x101/config_Active_ControllerID_0x101.h

@@ -7,7 +7,7 @@
 #define DEBUG_I2C_driver_Adafruit_PWMServoDriver
 #define HAS__PCINT_setup //to allow interrupts
 
-//#define DISABLE_TASK_TYPE_T_DISPLAY_queue_pop________
+#define DISABLE_TASK_TYPE_T_DISPLAY_queue_pop________
 //#error
 //#define DEBUG 5 
 

+ 13 - 1
SE/stuff/P5_Automation_can-dev-res/___loop/_SlaveID_loop1.h

@@ -1,10 +1,13 @@
 if(!digitalRead(CAN_INTpin))                    // If pin 2 is low, read receive buffer
           {
+         CAN_READ();
+       /*  
+         
             CAN0.readMsgBuf(&CANrxId, &CANlen, CANrxBuf); // Read data: len = data length, buf = data byte(s)
             Serial.print("#4444 read ID: ");
             Serial.print(CANrxId, HEX);
             Serial.print(" Data: ");
-          
+           
             for(int i = 0; i<CANlen; i++)           // Print each byte of the data
             {
               if(CANrxBuf[i] < 0x10)                // If data byte is less than 0x10, add a leading zero
@@ -19,6 +22,15 @@ if(!digitalRead(CAN_INTpin))                    // If pin 2 is low, read receive
             }
             Serial.println();
 
+
+*/
+         
+
+
+
+
+
+
             
           }
   

+ 6 - 2
SE/stuff/P5_Automation_can-dev-res/___loop/___loop_init.h

@@ -12,7 +12,11 @@ static ARDUINO_LOOP_LATENCY_T      ARDUINO_LOOP_LATENCY__MAIN_A = 100 ; //EVERY
 static ARDUINO_LOOP_LATENCY_T     ARDUINO_LOOP_LATENCY__MAIN_END_A = 500 ; //EVERY 10 LOOPS INIT THIS LATENCY
 
 
-register long time;
 
 
-register ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_LOOP_INITIALIZED_A = 0;
+
+register ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_LOOP_INITIALIZED_A = 0;
+
+
+
+static ARDUINO_ARRAY_time_min_run_MIN_T TASK_TYPE_T_Slave_Ports_broadcast____time_min_run_MIN_A = time + (1000 * 60) ;

+ 13 - 2
SE/stuff/P5_Automation_can-dev-res/___loop/__main_loop_top.h

@@ -70,11 +70,22 @@ if(ARDUINO_LOOP_LATENCY_COUNTER__MAIN(ARDUINO_LOOP_LATENCY__MAIN_A) <= ARDUINO_L
                     }
                  #endif
             ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add = _Slave_Ports_queue__add(  Slave_Ports_Status_QUEUE_A, Slave_Ports_Status_QUEUE_T_ARDUINO_ATTR_ARRAY_A ,
-             TASK_TYPE_T_Slave_Ports_broadcast____ ,TASK_PORT_ASSOC_EMPTY ,millis(), millis() + ARDUINO_time_seq_id_A_INCREMENT , ARDUINO_ARRAY_INDEX_NOT_SET ) ;  //        "_Slave_Ports_broadcast", //4
+             TASK_TYPE_T_Slave_Ports_broadcast____ ,TASK_PORT_ASSOC_EMPTY ,time, time + ARDUINO_time_seq_id_A_INCREMENT , ARDUINO_ARRAY_INDEX_NOT_SET ) ;  //        "_Slave_Ports_broadcast", //4
             ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add = _Slave_Ports_queue__add(  Slave_Ports_Status_QUEUE_A, Slave_Ports_Status_QUEUE_T_ARDUINO_ATTR_ARRAY_A , 
-             TASK_TYPE_T_Slave_Ports_set_I2C______ ,TASK_PORT_ASSOC_EMPTY ,millis(), millis() + ARDUINO_time_seq_id_A_INCREMENT , ARDUINO_ARRAY_INDEX_NOT_SET) ;  //"_Slave_Ports_set_I2C" //5  - to set ports associated on PW
+             TASK_TYPE_T_Slave_Ports_set_I2C______ ,TASK_PORT_ASSOC_EMPTY ,time, time + ARDUINO_time_seq_id_A_INCREMENT , ARDUINO_ARRAY_INDEX_NOT_SET) ;  //"_Slave_Ports_set_I2C" //5  - to set ports associated on PW
             //ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add = _Slave_Ports_queue__add(  Slave_Ports_Status_QUEUE_A,   Slave_Ports_Status_QUEUE_T_ARDUINO_ATTR_ARRAY_A , TASK_TYPE_T_DISPLAY_queue_pop________ ,TASK_PORT_ASSOC_EMPTY ,millis(), millis() + ARDUINO_time_seq_id_A_INCREMENT , ) ;  //"_Slave_Ports_set_I2C" //5  - to set ports associated on PW
             }
+            
+            
+            
+            if(time > TASK_TYPE_T_Slave_Ports_broadcast____time_min_run_MIN_A) {
+                    Serial.println("[ #777 time > TASK_TYPE_T_Slave_Ports_broadcast____time_min_run_MIN_A] ");
+                TASK_TYPE_T_Slave_Ports_broadcast____time_min_run_MIN_A = time + (1000 * 60) ;
+                    ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add = _Slave_Ports_queue__add(  Slave_Ports_Status_QUEUE_A, Slave_Ports_Status_QUEUE_T_ARDUINO_ATTR_ARRAY_A ,
+                     TASK_TYPE_T_Slave_Ports_broadcast____ ,TASK_PORT_ASSOC_EMPTY ,time, time + ARDUINO_time_seq_id_A_INCREMENT , ARDUINO_ARRAY_INDEX_NOT_SET ) ;  //        "_Slave_Ports_broadcast", //4
+            
+            }
+            
 
 
 }