Browse our Blog. You will find multiple applications, solutions, code examples. Navigate using the tag cloud or search using specific criteris

How to read time on Arduino IDE


In this post it will be seen how to read the time since the Arduino based PLC board began running with the function millis().  Basically this function return the number of milliseconds since the controller began running the current program. This function is really useful when you want to control process comparing time

*This value will overflow after 50 days approximately


Ethernet or 20 I/Os PLC:      Ethernet PLC     20 I/Os PLC    

Industrial Shields boards:   Industrial Shields Boards


time = millis();




Unsigned long of millisecond since the controller program started


Code Example, blinking of an analog outputs:

unsigned long actualtime = 0;
unsigned long beforetime = 0;
unsigned long deltatime = 1000;
bool laststate = true;

void setup() {
  pinMode(Q0_0, OUTPUT);

void loop() {
  //Save actual time on actualtime variable
  actualtime = millis(); 
  //Compare if it have passed a second
  if (actualtime - beforetime >= deltatime){
    if (laststate){
      //Digital output at HIGH position
      digitalWrite(Q0_0, HIGH);
      laststate = false;
      //Digital output at LOW position
      digitalWrite(Q0_0, LOW);
      laststate = true;
    //Set beforetime to the actual value of microseconds
    beforetime = millis(); 

Do you want more information?

Open Source technology allows you to develop your installations.

Just fill the form and we will contact you as soon as we can.