X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/01a80df6c2f61326e198f9dc9933df560da7379d..0da99447d3e88e83f9977501bee56af5c7aa56c0:/LUFA/Drivers/Peripheral/AVR8/SerialSPI_AVR8.h diff --git a/LUFA/Drivers/Peripheral/AVR8/SerialSPI_AVR8.h b/LUFA/Drivers/Peripheral/AVR8/SerialSPI_AVR8.h index 0126630ac..24d341f03 100644 --- a/LUFA/Drivers/Peripheral/AVR8/SerialSPI_AVR8.h +++ b/LUFA/Drivers/Peripheral/AVR8/SerialSPI_AVR8.h @@ -53,17 +53,17 @@ * \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); - * + * * // 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 @@ -176,9 +176,7 @@ */ static inline void SerialSPI_SendByte(const uint8_t DataByte) { - UDR1 = DataByte; - while (!(UCSR1A & (1 << TXC1))); - UCSR1A = (1 << TXC1); + SerialSPI_TransferByte(DataByte); } /** Sends a dummy byte through the USART SPI interface, blocking until the transfer is complete. The response @@ -188,10 +186,7 @@ */ static inline uint8_t SerialSPI_ReceiveByte(void) { - UDR1 = 0; - while (!(UCSR1A & (1 << TXC1))); - UCSR1A = (1 << TXC1); - return UDR1; + return SerialSPI_TransferByte(0); } /* Disable C linkage for C++ Compilers: */