Application example: Auto-repeat

The autorepeat function can be used within programs if a user needs to press a button more than once. When the user presses a key more than 1,5 seconds, there will be more keyboard hits per second.

Scheme

On the top the DebounceTimer is a timer that act on the pushbutton, when pressed the signal is hold for at least 100 ms and will be forwarded to the output. The Delaytimer only reacts when the pushbutton is pressed more than 1,5 second. The Oscillator on the bottom gives a signal every 0,5 second (0,25 is the high time). When the pushbutton is pressed more than 1,5 second, the delaytimer reacts and activates the and symbol which uses the Oscillator. The exclusive or symbol gets a signal from the and symbol and forwards the input every 0.25 second.




Simulation

This figure shows the simulation of the AutoRepeat schematic in Realizer. On the left you will see the input, it can be 1 or 0 It shows if the button is turned on or off. On the right side is the table with the time, the button is pressed and the mount of keyboard hits. As you see the button is pressed for more than 1.5 seconds in the beginning and then released and pressed a few times again.



Download

Autorep.zip
Prepared for devices: ST6200C ST7FLite10 PIC12F508 PIC16F88 other devices can be used by reconnecting I/O pins.