This document provides an overview of serial buses, focusing on the UART, SPI, and I2C protocols. It begins with an introduction to serial buses and their motivations. It then covers the UART protocol in detail, explaining its components like start/stop bits and how it handles asynchronous communication. Next, it discusses the SPI protocol, detailing its synchronous nature, wiring configuration involving MOSI, MISO, SCLK and slave select lines, and shifting protocol. It also compares SPI's pros and cons to alternative protocols. Finally, it introduces I2C, explaining its electrical wiring, use of a clock and address lines, basic read/write transactions, and speed capabilities. The document provides examples and exercises to illustrate key