ZUFALL ist hier ein Makro. D.h. der Compiler setzt überall wo ZUFALL steht, die Klammer ein.
'micros() & 1' vergleicht die Zahl der vergangenen Mikrosekunden mit der Maske 1.
Somit wird nur das niedrigste Bit ausgewertet. Man könnte auch fragen: Ist der Momentanwert von micros() gerade oder ungerade?
Das ist natürlich nur Pseudo-Zufall, in einfachen Programmen kann es sein, dass immer ein definierter Wert rauskommt.