aboutsummaryrefslogtreecommitdiff
path: root/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
diff options
context:
space:
mode:
Diffstat (limited to 'LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c')
-rw-r--r--LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
index 2f318055fa..accdc659f4 100644
--- a/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
+++ b/LUFA/Drivers/Peripheral/XMEGA/Serial_XMEGA.c
@@ -92,3 +92,26 @@ void Serial_SendData(USART_t* const USART,
Serial_SendByte(USART, *(Buffer++));
}
+void Serial_CreateStream(FILE* Stream)
+{
+ if (!(Stream))
+ {
+ Stream = &USARTSerialStream;
+ stdin = Stream;
+ stdout = Stream;
+ }
+
+ *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar, _FDEV_SETUP_RW);
+}
+
+void Serial_CreateBlockingStream(FILE* Stream)
+{
+ if (!(Stream))
+ {
+ Stream = &USARTSerialStream;
+ stdin = Stream;
+ stdout = Stream;
+ }
+
+ *Stream = (FILE)FDEV_SETUP_STREAM(Serial_putchar, Serial_getchar_Blocking, _FDEV_SETUP_RW);
+}