*
  *  \section Sec_ModDescription Module Description
  *  On-chip serial USART driver for the 8-bit AVR8 microcontrollers.
  *
  *  \section Sec_ModDescription Module Description
  *  On-chip serial USART driver for the 8-bit AVR8 microcontrollers.
  *  \code
  *      // Initialize the Master SPI mode USART driver before first use, with 1Mbit baud
  *      SerialSPI_Init((USART_SPI_SCK_LEAD_RISING | SPI_SAMPLE_LEADING | SPI_ORDER_MSB_FIRST), 1000000);
  *  \code
  *      // Initialize the Master SPI mode USART driver before first use, with 1Mbit baud
  *      SerialSPI_Init((USART_SPI_SCK_LEAD_RISING | SPI_SAMPLE_LEADING | SPI_ORDER_MSB_FIRST), 1000000);
  *      // Send several bytes, ignoring the returned data
  *      SerialSPI_SendByte(0x01);
  *      SerialSPI_SendByte(0x02);
  *      SerialSPI_SendByte(0x03);
  *      // Send several bytes, ignoring the returned data
  *      SerialSPI_SendByte(0x01);
  *      SerialSPI_SendByte(0x02);
  *      SerialSPI_SendByte(0x03);
  *      // Receive several bytes, sending a dummy 0x00 byte each time
  *      uint8_t Byte1 = SerialSPI_ReceiveByte();
  *      uint8_t Byte2 = SerialSPI_ReceiveByte();
  *      uint8_t Byte3 = SerialSPI_ReceiveByte();
  *      // Receive several bytes, sending a dummy 0x00 byte each time
  *      uint8_t Byte1 = SerialSPI_ReceiveByte();
  *      uint8_t Byte2 = SerialSPI_ReceiveByte();
  *      uint8_t Byte3 = SerialSPI_ReceiveByte();
  *      // Send a byte, and store the received byte from the same transaction
  *      uint8_t ResponseByte = SerialSPI_TransferByte(0xDC);
  *  \endcode
  *      // Send a byte, and store the received byte from the same transaction
  *      uint8_t ResponseByte = SerialSPI_TransferByte(0xDC);
  *  \endcode