a.binder 5 vuotta sitten
vanhempi
commit
475132ab5a

+ 3 - 0
SE/stuff/P5_Automation_can-dev-res/P5_Automation_can-dev-res.ino

@@ -79,6 +79,9 @@
 //#define HAS_TFT_ILI9163C 
 //#define HAS_TFT_ILI9163C 
 //#define HAS_LCD1602 
 //#define HAS_LCD1602 
 //#define HAS_ROTTARY_SW
 //#define HAS_ROTTARY_SW
+
+//#define DEBUG_I2C_driver_Adafruit_PWMServoDriver
+
 #define HAS__PCINT_setup //to allow interrupts
 #define HAS__PCINT_setup //to allow interrupts
 
 
 #define HAS__jm_Scheduler //to allow planned actions blink etc
 #define HAS__jm_Scheduler //to allow planned actions blink etc

+ 24 - 1
SE/stuff/P5_Automation_can-dev-res/_DRIVER_STATUS/_DRIVER_STATUS_struct.h

@@ -20,4 +20,27 @@ const ARDUINO_ARRAY_INDEX_DRIVER_STATUS_T  ARDUINO_ARRAY_INDEX_DRIVER_STATUS_TO_
   const ARDUINO_DRIVER_STATUS_T ARDUINO_DRIVER_INITIALIZED_BEGIN    = B00000100  ;
   const ARDUINO_DRIVER_STATUS_T ARDUINO_DRIVER_INITIALIZED_BEGIN    = B00000100  ;
   const ARDUINO_DRIVER_STATUS_T ARDUINO_DRIVER_INITIALIZED_FREQ     = B00001000  ;
   const ARDUINO_DRIVER_STATUS_T ARDUINO_DRIVER_INITIALIZED_FREQ     = B00001000  ;
   
   
-*/
+*/
+
+
+
+struct ARDUINO_ARRAY_DRIVER_T {
+    ARDUINO_ARRAY_INDEX_DRIVER_STATUS_T ARDUINO_ARRAY_INDEX_DRIVER_STATUS_A ;
+};
+
+struct ARDUINO_DRIVER_ATTR_ARRAY_S {
+    ARDUINO_ARRAY_INDEX_CURRENT_T ARDUINO_ARRAY_INDEX_CURRENT_A ;
+    ARDUINO_ARRAY_INDEX_LAST_T ARDUINO_ARRAY_INDEX_LAST_A ;
+    ARDUINO_ARRAY_COUNT_T ARDUINO_ARRAY_COUNT_A ;
+    ARDUINO_ARRAY_INDEX_LIMIT_T ARDUINO_ARRAY_INDEX_LIMIT_A;
+    ARDUINO_ARRAY_INDEX_NEXT_T ARDUINO_ARRAY_INDEX_NEXT_A ;
+    ARDUINO_ARRAY_time_min_run_MIN_T ARDUINO_ARRAY_time_min_run_MIN_A ;
+    ARDUINO_ARRAY_INDEX_time_min_run_MIN_T ARDUINO_ARRAY_INDEX_time_min_run_MIN_A ;
+};
+
+
+
+
+
+//void ARDUINO_ARRAY_DRIVER__add(ARDUINO_ARRAY_DRIVER_T* ARDUINO_ARRAY_DRIVER_A, 
+ //   )

+ 1 - 0
SE/stuff/P5_Automation_can-dev-res/_I2C_driver_Adafruit_PWMServoDriver/_I2C_driver_Adafruit_PWMServoDriver_config.h

@@ -1,2 +1,3 @@
 //I2C_driver_Adafruit_PWMServoDriver
 //I2C_driver_Adafruit_PWMServoDriver
  
  
+//Adafruit_PWMServoDriver__add(Adafruit_PWMServoDriver_A,Adafruit_PWMServoDriver_ATTR_ARRAY_A);

+ 28 - 6
SE/stuff/P5_Automation_can-dev-res/_I2C_driver_Adafruit_PWMServoDriver/_I2C_driver_Adafruit_PWMServoDriver_func.h

@@ -5,11 +5,33 @@
  // Adafruit_PWMServoDriver  Adafruit_PWMServoDriver_0X40 = Adafruit_PWMServoDriver(0x41);
  // Adafruit_PWMServoDriver  Adafruit_PWMServoDriver_0X40 = Adafruit_PWMServoDriver(0x41);
   
   
   
   
+ //disabled
+ 
+  
+  
+ 
+ void Adafruit_PWMServoDriver__add(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A,
+        Adafruit_PWMServoDriver_ATTR_ARRAY_T  &Adafruit_PWMServoDriver_ATTR_ARRAY_A) {
+     int i;
+    //int *ptrNumber;
+    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS ; i++) {
+        if(not(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0 )) {
+            //Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A = I2C_ADDRESS_A;
+            //Adafruit_PWMServoDriver _class_cntr = Adafruit_PWMServoDriver(I2C_ADDRESS_A) ;
+            Adafruit_PWMServoDriver_A[i].Adafruit_PWMServoDriver_V = Adafruit_PWMServoDriver(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A);
+        }
+    }
+  
+ }
+  
+  
+  
+  
   
   
  int Adafruit_PWMServoDriver_init_all(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A) {
  int Adafruit_PWMServoDriver_init_all(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A) {
     int i;
     int i;
     //int *ptrNumber;
     //int *ptrNumber;
-    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS ; i++) {
+    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C ; i++) {
         if(not(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0 )) {
         if(not(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0 )) {
             //Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A = I2C_ADDRESS_A;
             //Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A = I2C_ADDRESS_A;
             //Adafruit_PWMServoDriver _class_cntr = Adafruit_PWMServoDriver(I2C_ADDRESS_A) ;
             //Adafruit_PWMServoDriver _class_cntr = Adafruit_PWMServoDriver(I2C_ADDRESS_A) ;
@@ -23,7 +45,7 @@
   
   
  int Adafruit_PWMServoDriver_begin_all(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A) {
  int Adafruit_PWMServoDriver_begin_all(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A) {
   int i;
   int i;
-    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS ; i++) {
+    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C ; i++) {
         if(not(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0)) {
         if(not(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0)) {
             Adafruit_PWMServoDriver_A[i].Adafruit_PWMServoDriver_V.begin();
             Adafruit_PWMServoDriver_A[i].Adafruit_PWMServoDriver_V.begin();
              Serial.print("#577 setPWM  begin ["); Serial.print(i);  Serial.println("]");
              Serial.print("#577 setPWM  begin ["); Serial.print(i);  Serial.println("]");
@@ -39,7 +61,7 @@
  I2C_ADDRESS_T I2C_ADDRESS_A ) {
  I2C_ADDRESS_T I2C_ADDRESS_A ) {
     int i;
     int i;
     //int *ptrNumber;
     //int *ptrNumber;
-    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS ; i++) {
+    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C ; i++) {
         if(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0 || Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == I2C_ADDRESS_A) {
         if(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == 0 || Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == I2C_ADDRESS_A) {
             Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A = I2C_ADDRESS_A;
             Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A = I2C_ADDRESS_A;
             //Adafruit_PWMServoDriver _class_cntr = Adafruit_PWMServoDriver(I2C_ADDRESS_A) ;
             //Adafruit_PWMServoDriver _class_cntr = Adafruit_PWMServoDriver(I2C_ADDRESS_A) ;
@@ -53,7 +75,7 @@
 
 
  int Adafruit_PWMServoDriver_begin(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A,I2C_ADDRESS_T I2C_ADDRESS_A) {
  int Adafruit_PWMServoDriver_begin(Adafruit_PWMServoDriver_T* Adafruit_PWMServoDriver_A,I2C_ADDRESS_T I2C_ADDRESS_A) {
   int i;
   int i;
-    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS ; i++) {
+    for(i=1;i<=ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C ; i++) {
         if(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == I2C_ADDRESS_A) {
         if(Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A == I2C_ADDRESS_A) {
             Adafruit_PWMServoDriver_A[i].Adafruit_PWMServoDriver_V.begin();
             Adafruit_PWMServoDriver_A[i].Adafruit_PWMServoDriver_V.begin();
              Serial.print("#577 setPWM  begin ["); Serial.print(i);  Serial.println("]");
              Serial.print("#577 setPWM  begin ["); Serial.print(i);  Serial.println("]");
@@ -91,7 +113,7 @@ ARDUINO_ARRAY_PRIMARY_KET_T Adafruit_PWMServoDriver__get_PRIMARY_KET_T(Adafruit_
             break;
             break;
         }
         }
     }
     }
-    //return 1;
+    return 0;
   }
   }
 
 
 
 
@@ -114,7 +136,7 @@ void Adafruit_PWMServoDriver__print_status(Adafruit_PWMServoDriver_T* Adafruit_P
  
  
  int Adafruit_PWMServoDriver_init_I = Adafruit_PWMServoDriver_init_all(Adafruit_PWMServoDriver_A);
  int Adafruit_PWMServoDriver_init_I = Adafruit_PWMServoDriver_init_all(Adafruit_PWMServoDriver_A);
 
 
-  
+ 
 
 
 /*
 /*
 Adafruit_PWMServoDriver Adafruit_PWMServoDriver_F(I2C_ADDRESS_T I2C_ADDRESS_A) {
 Adafruit_PWMServoDriver Adafruit_PWMServoDriver_F(I2C_ADDRESS_T I2C_ADDRESS_A) {

+ 3 - 0
SE/stuff/P5_Automation_can-dev-res/_I2C_driver_Adafruit_PWMServoDriver/_I2C_driver_Adafruit_PWMServoDriver_setup.h

@@ -9,6 +9,9 @@
 #endif
 #endif
 
 
 
 
+
+ Adafruit_PWMServoDriver__add(Adafruit_PWMServoDriver_A,Adafruit_PWMServoDriver_ATTR_ARRAY_A);
+
 int Adafruit_PWMServoDriver_begin_all_R = Adafruit_PWMServoDriver_begin_all(Adafruit_PWMServoDriver_A); 
 int Adafruit_PWMServoDriver_begin_all_R = Adafruit_PWMServoDriver_begin_all(Adafruit_PWMServoDriver_A); 
 
 
 /* redefine
 /* redefine

+ 28 - 3
SE/stuff/P5_Automation_can-dev-res/_I2C_driver_Adafruit_PWMServoDriver/_I2C_driver_Adafruit_PWMServoDriver_struct.h

@@ -28,16 +28,41 @@ typedef struct ARDUINO_METHOD_ARRAY_S ARDUINO_METHOD_ARRAY_T ;
 //Adafruit_PWMServoDriver Adafruit_PWMServoDriver_T[0] = new Adafruit_PWMServoDriver(0x41);
 //Adafruit_PWMServoDriver Adafruit_PWMServoDriver_T[0] = new Adafruit_PWMServoDriver(0x41);
 
 
 
 
+typedef struct ARDUINO_ATTR_ARRAY_S  Adafruit_PWMServoDriver_ATTR_ARRAY_T;
+
+static Adafruit_PWMServoDriver_ATTR_ARRAY_T  Adafruit_PWMServoDriver_ATTR_ARRAY_A =  //[ARDUINO_ATTR_ARRAY_S_INDEX] 
+        {    ARDUINO_ARRAY_INDEX_CURRENT_INIT ,
+             ARDUINO_ARRAY_INDEX_LAST_INIT ,
+             ARDUINO_ARRAY_COUNT_T_INIT ,
+             ARDUINO_ARRAY_INDEX_LIMIT_PORTS , 
+             ARDUINO_ARRAY_INDEX_NEXT_INIT,
+             ARDUINO_ARRAY_time_min_run_MIN_INIT,
+             ARDUINO_ARRAY_INDEX_time_min_run_MIN_INIT  
+              }
+    ;
+
 
 
 struct Adafruit_PWMServoDriver_S {
 struct Adafruit_PWMServoDriver_S {
-        I2C_ADDRESS_T I2C_ADDRESS_A;
+        //USE I2C_ARRAY_DRIVER_T;
+            I2C_ADDRESS_T I2C_ADDRESS_A;
+            // USE ARDUINO_ARRAY_DRIVER_T;
+              ARDUINO_ARRAY_INDEX_DRIVER_STATUS_T ARDUINO_ARRAY_INDEX_DRIVER_STATUS_A ;
         Adafruit_PWMServoDriver Adafruit_PWMServoDriver_V ;
         Adafruit_PWMServoDriver Adafruit_PWMServoDriver_V ;
         
         
     };
     };
   
   
   typedef struct Adafruit_PWMServoDriver_S Adafruit_PWMServoDriver_T;
   typedef struct Adafruit_PWMServoDriver_S Adafruit_PWMServoDriver_T;
   
   
-  Adafruit_PWMServoDriver_T Adafruit_PWMServoDriver_A[5] = {
+  static Adafruit_PWMServoDriver_T Adafruit_PWMServoDriver_A[ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C]={};
+  
+  
+  
+  
+ 
+  
+  /*
+  
+  static Adafruit_PWMServoDriver_T Adafruit_PWMServoDriver_A[5] = {
        { I2C_ADDRESS_0x40 }
        { I2C_ADDRESS_0x40 }
        //,
        //,
       // { I2C_ADDRESS_0x41 },
       // { I2C_ADDRESS_0x41 },
@@ -45,4 +70,4 @@ struct Adafruit_PWMServoDriver_S {
       // { I2C_ADDRESS_0x43 },
       // { I2C_ADDRESS_0x43 },
       // { I2C_ADDRESS_0x44 }
       // { I2C_ADDRESS_0x44 }
   };
   };
- 
+ */

+ 2 - 2
SE/stuff/P5_Automation_can-dev-res/_Slave_Ports_I2C_func.h

@@ -21,7 +21,7 @@
     
     
     
     
     
     
-    I2C_INDEX_DRIVER_T I2C_INDEX_DRIVER_A ;
+  //  I2C_INDEX_DRIVER_T I2C_INDEX_DRIVER_A ;
     //auto I2C_INDEX_DRIVER_T I2C_INDEX_DRIVER_A  ;
     //auto I2C_INDEX_DRIVER_T I2C_INDEX_DRIVER_A  ;
     
     
     
     
@@ -69,7 +69,7 @@
                
                
                     if(Slave_Ports_Status_A[i].I2C_driver == I2C_driver_Adafruit_PWMServoDriver) {
                     if(Slave_Ports_Status_A[i].I2C_driver == I2C_driver_Adafruit_PWMServoDriver) {
                           //ARDUINO_ARRAY_PRIMARY_KET_T  Adafruit_PWMServoDriver__get_PRIMARY_KET_A = Adafruit_PWMServoDriver__get_PRIMARY_KET_T(
                           //ARDUINO_ARRAY_PRIMARY_KET_T  Adafruit_PWMServoDriver__get_PRIMARY_KET_A = Adafruit_PWMServoDriver__get_PRIMARY_KET_T(
-                          I2C_INDEX_DRIVER_A = Adafruit_PWMServoDriver__get_PRIMARY_KET_T(
+                       I2C_INDEX_DRIVER_T   I2C_INDEX_DRIVER_A = Adafruit_PWMServoDriver__get_PRIMARY_KET_T(
                                 Adafruit_PWMServoDriver_A, Slave_Ports_Status_A[i].Address);
                                 Adafruit_PWMServoDriver_A, Slave_Ports_Status_A[i].Address);
                                 
                                 
                             if(I2C_INDEX_DRIVER_A > 0 ) {//Slave_Ports_Status_A[i].Address == I2C_ADDRESS_0x40 ) {
                             if(I2C_INDEX_DRIVER_A > 0 ) {//Slave_Ports_Status_A[i].Address == I2C_ADDRESS_0x40 ) {

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

@@ -4,7 +4,7 @@
 #define HAS_ROTTARY_SW
 #define HAS_ROTTARY_SW
 #define HAS_TFT_ILI9163C
 #define HAS_TFT_ILI9163C
 #define HAS_I2C_driver_Adafruit_PWMServoDriver 
 #define HAS_I2C_driver_Adafruit_PWMServoDriver 
-
+#define DEBUG_I2C_driver_Adafruit_PWMServoDriver
 
 
 
 
 #define DEBUG 5 
 #define DEBUG 5 

+ 31 - 12
SE/stuff/P5_Automation_can-dev-res/__main_I2C_struc.h

@@ -4,26 +4,34 @@ typedef int I2C_ADDRESS_T ;
 
 
 
 
 
 
+typedef ARDUINO_ARRAY_INDEX_DRIVER_T I2C_INDEX_DRIVER_T; 
 
 
 
 
 
 
-
-const I2C_ADDRESS  I2C_ADDRESS_0x40  = 0x40 ;
-const I2C_ADDRESS  I2C_ADDRESS_0x41  = 0x41 ;
-const I2C_ADDRESS  I2C_ADDRESS_0x42  = 0x42 ;
-const I2C_ADDRESS  I2C_ADDRESS_0x43  = 0x43 ;
-const I2C_ADDRESS  I2C_ADDRESS_0x44  = 0x44 ; 
+const I2C_ADDRESS_T  I2C_ADDRESS_0x40  = 0x40 ;
+const I2C_ADDRESS_T  I2C_ADDRESS_0x41  = 0x41 ;
+const I2C_ADDRESS_T  I2C_ADDRESS_0x42  = 0x42 ;
+const I2C_ADDRESS_T  I2C_ADDRESS_0x43  = 0x43 ;
+const I2C_ADDRESS_T  I2C_ADDRESS_0x44  = 0x44 ; 
 
 
 
 
 //static ARDUINO_ARRAY_INDEX_T ARDUINO_ARRAY_INDEX_T;
 //static ARDUINO_ARRAY_INDEX_T ARDUINO_ARRAY_INDEX_T;
 
 
 
 
 
 
+struct I2C_ARRAY_DRIVER_S {
+    I2C_ADDRESS_T I2C_ADDRESS_A;
+   // ARDUINO_ARRAY_DRIVER_T;
+   ARDUINO_ARRAY_INDEX_DRIVER_STATUS_T ARDUINO_ARRAY_INDEX_DRIVER_STATUS_A ;
+};
 
 
-
+typedef I2C_ARRAY_DRIVER_S I2C_ARRAY_DRIVER_T ;
 
 
 typedef struct ARDUINO_ATTR_ARRAY_S I2C_ARDUINO_ATTR_ARRAY_T;
 typedef struct ARDUINO_ATTR_ARRAY_S I2C_ARDUINO_ATTR_ARRAY_T;
-extern I2C_ARDUINO_ATTR_ARRAY_T  I2C_ARDUINO_ATTR_ARRAY_A =  //[ARDUINO_ATTR_ARRAY_S_INDEX] 
+
+
+
+static I2C_ARDUINO_ATTR_ARRAY_T  I2C_ARDUINO_ATTR_ARRAY_A =  //[ARDUINO_ATTR_ARRAY_S_INDEX] 
         {    ARDUINO_ARRAY_INDEX_CURRENT_INIT ,
         {    ARDUINO_ARRAY_INDEX_CURRENT_INIT ,
              ARDUINO_ARRAY_INDEX_LAST_INIT ,
              ARDUINO_ARRAY_INDEX_LAST_INIT ,
              ARDUINO_ARRAY_COUNT_T_INIT ,
              ARDUINO_ARRAY_COUNT_T_INIT ,
@@ -34,8 +42,19 @@ extern I2C_ARDUINO_ATTR_ARRAY_T  I2C_ARDUINO_ATTR_ARRAY_A =  //[ARDUINO_ATTR_ARR
               }
               }
     ;
     ;
 
 
-typedef ARDUINO_ARRAY_INDEX_T I2C_INDEX_DRIVER_T ; //DO NP INDEX GDIZE JEST ZAINCJALIZOWANY JAKIS HANDLER  Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A ...
+//struct ARDUINO_ARRAY_INDEX_T I2C_INDEX_DRIVER_T ; //DO NP INDEX GDIZE JEST ZAINCJALIZOWANY JAKIS HANDLER  Adafruit_PWMServoDriver_A[i].I2C_ADDRESS_A ...
  
  
-
-
-
+static  I2C_ARRAY_DRIVER_T  I2C_ARRAY_DRIVER_A[5]={} ; //
+
+         /*
+void I2C_INDEX_DRIVER__add(I2C_INDEX_DRIVER_T*  I2C_INDEX_DRIVER_A, I2C_ARDUINO_ATTR_ARRAY_T  &I2C_ARDUINO_ATTR_ARRAY_A) {
+        I2C_INDEX_DRIVER_A[1].I2C_ADDRESS_A = I2C_ADDRESS_0x40 ;
+        I2C_INDEX_DRIVER_A[2].ARDUINO_ARRAY_INDEX_DRIVER_STATUS_T = ARDUINO_ARRAY_INDEX_DRIVER_STATUS_TO_INIT_A ;
+};
+*/
+/*
+I2C_INDEX_DRIVER_A[1] = { //todo dynamic
+        I2C_ADDRESS_0x40 , //I2C_ADDRESS_T I2C_ADDRESS_A;
+        ARDUINO_ARRAY_INDEX_DRIVER_STATUS_TO_INIT_A //ARDUINO_ARRAY_DRIVER_T;
+    };
+*/

+ 3 - 2
SE/stuff/P5_Automation_can-dev-res/__main_extern.h

@@ -5,8 +5,9 @@ the program files. When you use 'extern', the variable cannot be initialized how
 it points the variable name at a storage location that has been previously defined.
 it points the variable name at a storage location that has been previously defined.
 
 
 When you have multiple files and you define a global variable or function, which will also be used in
 When you have multiple files and you define a global variable or function, which will also be used in
- other files, then extern will be used in another file to provide the reference of defined variable or function. 
- Just for understanding, extern is used to declare a global variable or function in another file.
+ other files, then extern will be used in another file to provide the reference of defined variable
+  or function.  Just for understanding, extern is used to declare a global variable or 
+  function in another file.
 
 
 The extern modifier is most commonly used when there are two or more files sharing the same global 
 The extern modifier is most commonly used when there are two or more files sharing the same global 
 variables or functions as explained below.
 variables or functions as explained below.

+ 3 - 0
SE/stuff/P5_Automation_can-dev-res/__main_init.h

@@ -5,6 +5,9 @@ ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_FUNCT_INIT_RESULT_Slave_Ports_queue__add ;
 ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_FUNCT_INIT_RESULT__Slave_Ports_LOCAL_init ;
 ARDUINO_FUNCT_INIT_RESULT_T ARDUINO_FUNCT_INIT_RESULT__Slave_Ports_LOCAL_init ;
 
 
 
 
+
+
+
 /*
 /*
 ARDUINO_LOOP_LATENCY_T      ARDUINO_LOOP_LATENCY__MAIN_A = 100 ; //EVERY 10 LOOPS INIT THIS LATENCY
 ARDUINO_LOOP_LATENCY_T      ARDUINO_LOOP_LATENCY__MAIN_A = 100 ; //EVERY 10 LOOPS INIT THIS LATENCY
 ARDUINO_LOOP_LATENCY_COUNTER_T  ARDUINO_LOOP_LATENCY_COUNTER__MAIN_A = 0 ;// = ARDUINO_LOOP_LATENCY_COUNTER_INIT ; //WILL decrement
 ARDUINO_LOOP_LATENCY_COUNTER_T  ARDUINO_LOOP_LATENCY_COUNTER__MAIN_A = 0 ;// = ARDUINO_LOOP_LATENCY_COUNTER_INIT ; //WILL decrement

+ 3 - 0
SE/stuff/P5_Automation_can-dev-res/__main_struct_limits.h

@@ -4,6 +4,9 @@ const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_T_TO_DELETE_S_LIMIT = 5 ;
 
 
 
 
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_PORTS = 50 ;
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_PORTS = 50 ;
+
+const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_PORTS_I2C = 5 ;
+
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY = 10 ;
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_DISPLAY = 10 ;
 
 
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_QUEUE = 20 ;
 const ARDUINO_ARRAY_INDEX_LIMIT_T  ARDUINO_ARRAY_INDEX_LIMIT_QUEUE = 20 ;