📦Free shipping over $10 in most countries and regions!



millis()

[Time]

Description

Returns the number of milliseconds passed since the Arduino board began running the current program. This number will overflow (go back to zero), after approximately 50 days.

Syntax

time = millis()

Parameters

None

Returns

Number of milliseconds passed since the program started. Data type: unsigned long.

Example Code

This example code prints on the serial port the number of milliseconds passed since the Arduino board started running the code itself.

unsigned long myTime;

void setup() {
  Serial.begin(9600);
}
void loop() {
  Serial.print("Time: ");
  myTime = millis();

  Serial.println(myTime); // prints time since program started
  delay(1000);          // wait a second so as not to send massive amounts of data
}

Notes and Warnings

Please note that the return value for millis() is of type unsigned long, logic errors may occur if a programmer tries to do arithmetic with smaller data types such as int. Even signed long may encounter errors as its maximum value is half that of its unsigned counterpart.