Regarding to shiftOut() function in Arduino library, why is first writting to data pin, then shift clock is pulled high and then low? Why is not in this order: 1. shift clock HIGH 2. write data 3. shift clock LOW

Because I somewhere read (for 74hc595) that data must be written on every positive edge of shift clock..



As you read:

If you don't like this behavior, feel free to write your own function that acts in the way you require. General functions that interface to hardware can not be expected to work in all situations.

LarryD: As you read:

I was think that clock must be high before data pin is written in order to data pin state will be "saved". Ok, thanks for answers! :-)