@paulpaulson apply this to your explanation.
For a beginner your "explanation"
is a many letters using acronym, that hides away a lot of knowledge which requires to learn dozens of hours about medium advanced programming techniques!
@guyc1 here is a video-tutorial that explains how non-blocking timing based on millis() works
alternatively you could read this tutorial