Programming the counter (timer)
This section shows you how to code the 20-second timer. Programming a timer like this one is not trivial, since a user could activate the timer many times by waving at the ultrasonic sensor more than once while the counter is on. The program should not take into account those multiple activations if the 20-second counting is going on; otherwise, the counter will re-start multiple times and the counting will not be accurate. We also need to consider saving energy by turning off the LCD when not in use.
We should code our 20-second timer application by following these steps:
- Read values from the ultrasonic sensor.
- Check whether the user is waving at the sensor within 15 centimeters of the sensor. If this happens, do this:
a) Turn on the LCD light.
b) Show the Lather hands message and show the 20-second counting on the LCD.
c) When the counter finishes, show this message on the LCD: Rinse your hands.
d) Wait for 4 seconds and then turn off the...