Ein USB-Gerät hat einen USB Device Controller, ein PC (oder ein anderes
Gerät), an den man USB-Geräte anschließen kann, hat einen Host
Controller.
Um einen mp3-Stick an einen µC anzuschließen, benötigst Du einen Host
Controller, den es in einigen der leistungsfähigeren ARMe gibt.
Zusätzlich benötigst Du noch 'ne ganze Latte Software (USB Host Stack,
Treiber für "Mass Storage Devices" und Dateisystemtreiber für FAT16
und FAT32).
Deutlich einfacher wird Dein Projekt, wenn Du auf USB verzichtest und
stattdessen SD-Cards verwendest. Für die gibt es USB-Lesegeräte, die
mit eingesteckter Karte kaum größer sind als ein üblicher USB-Stick.
Code zum Ansteuern von SD-Cards findest Du hier in der Codesammlung.