<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>millis cookbook. millis on Bald Engineer</title><link>https://www.baldengineer.com/tag/millis-cookbook-millis</link><description>Recent content in millis cookbook. millis on Bald Engineer</description><generator>Hugo</generator><language>en-US</language><lastBuildDate>Thu, 31 Mar 2022 04:05:14 +0000</lastBuildDate><atom:link href="https://www.baldengineer.com/tag/millis-cookbook-millis/index.xml" rel="self" type="application/rss+xml"/><item><title>Arduino: Timing Code with Millis() as a Stopwatch</title><link>https://www.baldengineer.com/arduino-timing-code-with-millis-as-a-stopwatch.html</link><pubDate>Wed, 11 Dec 2013 12:25:22 +0000</pubDate><guid isPermaLink="false">https://www.baldengineer.com/?p=2085</guid><description>&lt;p&gt;Since most Arduino boards do not have debug capability, this limits the programmer to using Serial.prints. A useful piece of information might be knowing how long certain parts of code are running. Here&amp;rsquo;s a simple example that demonstrations:&lt;/p&gt;&#10;&lt;ol&gt;&#10;&lt;li&gt;How to properly use Serial.flush() (hint: it&amp;rsquo;s for TRANSMIT, not RECEIVE!)&lt;/li&gt;&#10;&lt;li&gt;How long Serial.print()s can &amp;ldquo;tie up&amp;rdquo; the Arduino.&lt;/li&gt;&#10;&lt;/ol&gt;&#10;&lt;p&gt;At 9600 baud, you&amp;rsquo;ll see that the Arduino is only busy for about 20 milliseconds in the first chunk of code, but busy for 93 milliseconds in the next. That&amp;rsquo;s because the Arduino (since 1.0) started using a transmit-buffer. Did you know your code doesn&amp;rsquo;t wait for a Serial.print to finish?&lt;/p&gt;</description></item></channel></rss>