I have a project based on a pic 18f4550. To write to a '595 shift register, is there a distinct advantage to using spi over regular io pins? I heard that spi is faster, but I am not sure how. Does it use a different, faster clock than the rest of the chip, or is it simply more efficient? I can bit-bang out a byte through regular io pins in a pretty small number of instructions. Does spi use less processing power? I will be shifting out fairly often during fairly intense calculations, so I want as many cycles as possible dedicated to my process and not shifting out.
My main reason for not wanting to use spi is that my current layout would make it a bit more difficult to access the required pins because I am already using a few of them for other things and would have to shuffle things around. I wanted to find out what benefits there are before I start ripping things up and moving them around.