Driving a shift register using an AVR chip’s built-in hardware is really quite easy. Most of their offerings have an SPI module, or Serial Peripheral Interface. A shift register is exactly that, a peripheral device that communicates via a serial line. All we need to do is hook up our connections and use a few
How to drive 595 shift registers with AVR hardware SPI using ATmega168 microcontroller is a post from: ATMega32 AVR