The difference between SPI, I2C, UART, USART serial bus protocol