title: What is the secret of the arduino `yield()`function?
body: <p>The Arduino docs explain <code>yield()</code> at <a href="https://www.arduino.cc/en/Reference/Scheduler" rel="noreferrer">https://www.arduino.cc/en/Reference/Scheduler</a> with regards to the Due. Apparently it is part of the Scheduler library:</p>
  
  <pre><code>#include &lt;Scheduler.h&gt;
  </code></pre>
  
  <p>However, I can call <code>yield()</code> on my Nano or ESP8266 without including the Scheduler lib -- but only in my main program, not inside include files. Also, the include does not work on my non-Dues.</p>
  
  <p>What's the secret that I'm missing about <code>yield()</code> or- what does <code>yield()</code> do on Arduino platforms other than Due?</p>