Mal was anderes: Delays wirst du nicht völlig ausmerzen können. Wenn die Delays aber so wichtig sind, warum dann nicht mit immerhin definierten Delays? Außerdem: mit Softwareentprellung hast du die Taster im Prinzip delayfrei, denn das Signal kann ja sofort verarbeitet werden. In der Regel sperrst du den Taster nur für eine kurze Zeit, d.h. der nachfolgende Tastendruck kann z.B. erst wieder in 50ms erfolgen. Oder früher, wenn sich eine Zeit lang nichts mehr am Pin getan hat, da gibt es unterschiedliche Strategien. Aber der erste Puls wird auf jeden Fall mitgenommen.
Wenn du jedoch deine Taster so schnell betätigst daß du keine 50ms zwischendurch warten kannst, dann wäre es vielleicht besser etwas anderes als Taster zu verwenden. Denn die werden das mechanisch nur kurz mitmachen.
Kannst du die Taster über das Arduinoframework überhaupt so schnell abfragen? Ich habe mir die Sprache nur sehr kurz angesehen, außerdem ging es um AD-Wandlung. Ich fand das allerdings sehr limitierend, da (in meinem Falle AD-Wandlung) lediglich der gewandelte Wert genutzt werden konnte. Informationen, die darüber hinausgingen (z.B. Samplerate) konnten weder bestimmt noch irgendwie ermittelt werden. Damit war das praktisch nicht nutzbar, weil vernünftige Signalverarbeitung schlicht unmöglich war.
Wenn ich Microcontroller programmiert habe, dann entweder in ADM oder C, und da gibt es nun viele Strategien, Tasterabfragen in das Programm einzubauen. Über Hardwareinterrupts bis Abfragen in verschiedenen Zeitintervallen ist da vieles machbar. Hast du eine Abschätzung, wie groß das Delay dazwischen ist und wie die Abfragen genau erfolgen, oder kannst du das tatsächlich selber definieren?