Changed all *_SendByte() function prototypes to accept a void pointer for the input buffer (thanks to Simon Küppers) instead of a uint8_t pointer.
This commit is contained in:
parent
2b4658de2c
commit
cfa48f5987
16 changed files with 54 additions and 53 deletions
|
@ -85,11 +85,11 @@ void Serial_SendString(const char* StringPtr)
|
|||
}
|
||||
}
|
||||
|
||||
void Serial_SendData(const uint8_t* Buffer,
|
||||
void Serial_SendData(const void* Buffer,
|
||||
uint16_t Length)
|
||||
{
|
||||
while (Length--)
|
||||
Serial_SendByte(*(Buffer++));
|
||||
Serial_SendByte(*((uint8_t*)Buffer++));
|
||||
}
|
||||
|
||||
void Serial_CreateStream(FILE* Stream)
|
||||
|
|
|
@ -53,13 +53,13 @@
|
|||
* \code
|
||||
* // Initialize the serial USART driver before first use, with 9600 baud (and no double-speed mode)
|
||||
* Serial_Init(9600, false);
|
||||
*
|
||||
*
|
||||
* // Send a string through the USART
|
||||
* Serial_SendString("Test String\r\n");
|
||||
*
|
||||
* // Send a raw byte through the USART
|
||||
* Serial_SendByte(0xDC);
|
||||
*
|
||||
*
|
||||
* // Receive a byte through the USART (or -1 if no data received)
|
||||
* int16_t DataByte = Serial_ReceiveByte();
|
||||
* \endcode
|
||||
|
@ -136,7 +136,7 @@
|
|||
* \param[in] Buffer Pointer to a buffer containing the data to send.
|
||||
* \param[in] Length Length of the data to send, in bytes.
|
||||
*/
|
||||
void Serial_SendData(const uint8_t* Buffer, uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
|
||||
void Serial_SendData(const void* Buffer, uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
|
||||
|
||||
/** Creates a standard character stream from the USART so that it can be used with all the regular functions
|
||||
* in the avr-libc \c <stdio.h> library that accept a \c FILE stream as a destination (e.g. \c fprintf). The created
|
||||
|
@ -153,7 +153,7 @@
|
|||
* \pre The USART must first be configured via a call to \ref Serial_Init() before the stream is used.
|
||||
*/
|
||||
void Serial_CreateStream(FILE* Stream);
|
||||
|
||||
|
||||
/** Identical to \ref Serial_CreateStream(), except that reads are blocking until the calling stream function terminates
|
||||
* the transfer.
|
||||
*
|
||||
|
|
|
@ -88,11 +88,11 @@ void Serial_SendString(USART_t* const USART,
|
|||
}
|
||||
|
||||
void Serial_SendData(USART_t* const USART,
|
||||
const uint8_t* Buffer,
|
||||
const void* Buffer,
|
||||
uint16_t Length)
|
||||
{
|
||||
while (Length--)
|
||||
Serial_SendByte(USART, *(Buffer++));
|
||||
Serial_SendByte(USART, *((uint8_t*)Buffer++));
|
||||
}
|
||||
|
||||
void Serial_CreateStream(FILE* Stream)
|
||||
|
|
|
@ -53,10 +53,10 @@
|
|||
* \code
|
||||
* // Initialize the serial USART driver before first use, with 9600 baud (and no double-speed mode)
|
||||
* Serial_Init(&USARTD0, 9600, false);
|
||||
*
|
||||
*
|
||||
* // Send a string through the USART
|
||||
* Serial_TxString(&USARTD0, "Test String\r\n");
|
||||
*
|
||||
*
|
||||
* // Receive a byte through the USART
|
||||
* uint8_t DataByte = Serial_RxByte(&USARTD0);
|
||||
* \endcode
|
||||
|
@ -139,7 +139,7 @@
|
|||
* \param[in] Length Length of the data to send, in bytes.
|
||||
*/
|
||||
void Serial_SendData(USART_t* const USART,
|
||||
const uint8_t* Buffer, uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
|
||||
const void* Buffer, uint16_t Length) ATTR_NON_NULL_PTR_ARG(1);
|
||||
|
||||
/** Creates a standard character stream from the USART so that it can be used with all the regular functions
|
||||
* in the avr-libc \c <stdio.h> library that accept a \c FILE stream as a destination (e.g. \c fprintf). The created
|
||||
|
@ -156,7 +156,7 @@
|
|||
* \pre The USART must first be configured via a call to \ref Serial_Init() before the stream is used.
|
||||
*/
|
||||
void Serial_CreateStream(FILE* Stream);
|
||||
|
||||
|
||||
/** Identical to \ref Serial_CreateStream(), except that reads are blocking until the calling stream function terminates
|
||||
* the transfer.
|
||||
*
|
||||
|
@ -183,7 +183,7 @@
|
|||
|
||||
USART->BAUDCTRLB = (BaudValue >> 8);
|
||||
USART->BAUDCTRLA = (BaudValue & 0xFF);
|
||||
|
||||
|
||||
USART->CTRLC = (USART_CMODE_ASYNCHRONOUS_gc | USART_PMODE_DISABLED_gc | USART_CHSIZE_8BIT_gc);
|
||||
USART->CTRLB = (USART_RXEN_bm | USART_TXEN_bm | (DoubleSpeed ? USART_CLK2X_bm : 0));
|
||||
}
|
||||
|
@ -198,7 +198,7 @@
|
|||
USART->CTRLB = 0;
|
||||
USART->CTRLC = 0;
|
||||
}
|
||||
|
||||
|
||||
/** Indicates whether a character has been received through the USART.
|
||||
*
|
||||
* \param[in,out] USART Pointer to the base of the USART peripheral within the device.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue