Wenn Du kein delay() verwendet wissen möchtest, warum verwendest Du dann den oben angegebenen Code?

https://github.com/dsyleixa/Arduino/.../ButtonClass.h
Zeile 146
Zeile 175