Würde das mit Interrupt versuchen.
aaaaaaber:
Kannst du nicht den SPI verwenden ? der hat doch alle Eigenschaften ?