void Periodic_run(){ if(T_10ms){ T_10ms = false; } if(T_20ms){ send_485(); // RS485 send recieve_485(); // RS485 recieve T_20ms = false; } if(T_50ms){ read_analog(); read_digital(); T_50ms = false; } if(T_100ms){ T_100ms = false; } if(T_200ms){ T_200ms = false; } if(T_500ms){ recieve_485_0(); // RS485 recieve (for developing) T_500ms = false; } if(T_1000ms){ write_buff(Buff_485_Wr, MC9_10_PV); // 10 DRS num 8 from ch1 PV T_1000ms = false; } if(T_2000ms){ Serial.print("----- remain 485 buff : "); // For Serial.println(numOf485); // Debugging T_2000ms = false; } if(T_5000ms){ write_buff(Buff_485_Wr, MC9_10_SV); // 10 DRS num 8 from ch1 SV T_5000ms = false; } } void timer_10ms(){ msCnt += 10; T_10ms = true; if (msCnt % 20 == 0){ T_20ms = true; } if (msCnt % 50 == 0){ T_50ms = true; } if (msCnt % 100 == 0){ T_100ms = true; } if (msCnt % 200 == 0){ T_200ms = true; } if (msCnt % 500 == 0){ T_500ms = true; } if (msCnt % 1000 == 0){ T_1000ms = true; } if (msCnt % 2000 == 0){ T_2000ms = true; } if (msCnt > 5000){ T_5000ms = true; msCnt = 0; } }