Mi entendimiento de la hoja de datos de ATtiny13 es que, aunque puede ISP el micro a través de "SPI", en realidad no tiene la funcionalidad para operar en un bus SPI con otros dispositivos (al menos no en hardware). ¿Está bien?
Como todos los AVR, el ATtiny13 usa SPI para la programación. Sin embargo, no tiene un puerto SPI real que pueda usarse en aplicaciones. El software SPI podría implementarse, por supuesto, y Atmel tiene una nota de aplicación sobre la técnica:
http://www.atmel.com/dyn/resources/prod_documents/doc1108.pdf
SPI es el protocolo serial síncrono más simple que se pueda imaginar, y dado que solo requiere un registro de desplazamiento, uno podría preguntarse por qué no está implementado en ATtiny. Al mismo tiempo, la simplicidad del protocolo ofrece una solución: el bit-banging. SPI es más fácil de usar que UART, donde debe preocuparse por el tiempo, o Manchester.
Entonces, la razón por la que SPI se usa para programar es que es simple y confiable. La razón por la que no está implementado en hardware es que puede emularse fácilmente en software.
Chinasaurio
stevenvh
Juan Meacham