Of course not, the clock pin is an output. The Arduino itself drives it. (At the fastest frequency possible using digitalWrite.) You can't just connect it to an external clock source.
Look up the reference for shiftout, and check the source code.
Even if it were an input, then it would still be impossible to get data out at a rate faster than a single instruction cycle.
The fastest you can get is SPI with DMA, which will give you close to 1/2 of the clock speed.
PieterP:
Of course not, the clock pin is an output. The Arduino itself drives it. (At the fastest frequency possible using digitalWrite.) You can't just connect it to an external clock source.
Look up the reference for shiftout, and check the source code.
Even if it were an input, then it would still be impossible to get data out at a rate faster than a single instruction cycle.
The fastest you can get is SPI with DMA, which will give you close to 1/2 of the clock speed.
Pieter
Thanks Pieter! So I should use other broads that could drive faster? Any suggestion?
What do you want to use it for?
If you would have a board that's orders of magnitude faster than 16MHz, you could do it in software, but an Arduino is too slow. So you need to find a board that has a 16MHz SPI (or I²S) interface with DMA.