Steuerdaten puffern und Sounds komplett abspielen

Hallo zusammen
Mein Arduino Nano ist mit einem DFPlayer verbunden. Das funktioniert soweit gut. Am Arduino habe ich zusätzlich auf ein paar Eingängen Signale die reinkommen und bestimmen, welches Soundfile abgespielt werden soll. Das funktioniert auch.
Problem: Wenn die Signale in kurzer, zeitlicher Abfolge reinkommen, dann wird das Soundfile nicht vollständig abgespielt, sondern unterbrochen und das neue File wird gespielt.
Ziel: Die Soundfiles sollen vollständig in der Reihenfolge der Eingangssignale abgespielt werden, auch wenn bereits ein oder mehrere neue Signale anstehen.
Könnt ihr mir hier helfen? Danke für eure Lösungsvorschläge!

Der DFPlayer hat einen Busy-Ausgang, der Anzeigt, wenn ein Lied gespielt wird. Den musst Du auswerten.
Die angeforderten Lieder kannst Du in einem Array speichern (als Byte, da Du wahrscheinlich weniger als 256 Lieder hast). Du kannst das Array am Besten als Queue organisieren (FiFo)

Gruß Tommy

Die einkommenden Befehle in einen Ringbuffer übernehmen und der Reihe nach abspielen. Genau definieren was bei Bufferoverflow passieren soll oder den Buffer groß genug machen

Kann man auch über die serielle Schnittstelle abfragen.
Grüße Uwe

@Tommy56 Danke für deine Tipps. Das mit dem Busy sollte ich hinkriegen. Ich bin allerdings relativ neu und kenne mich mit der Programmierung (noch) nicht so aus. Kannst du mir eine Anschubhilfe und einen Beispielcode fürs Buffern und Fifo geben, auf welchem ich aufbauen bzw. adaptieren kann?

Ist Dein Google defekt? Meines liefert bei Suche nach "Arduino fifo" z.B. diese Lib.

Gruß Tommy