X-Git-Url: http://git.linex4red.de/pub/USBasp.git/blobdiff_plain/f1b6ddb7107fd9534cc6a8d6ab2d46f349d9cdb7..9a04475c23b56a7176c985c020eea054a6c350f2:/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c?ds=inline diff --git a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c index 3317d0d6a..445b7c756 100644 --- a/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c +++ b/LUFA/Drivers/Peripheral/AVR8/Serial_AVR8.c @@ -18,7 +18,7 @@ advertising or publicity pertaining to distribution of the software without specific, written prior permission. - The author disclaim all warranties with regard to this + The author disclaims all warranties with regard to this software, including all implied warranties of merchantability and fitness. In no event shall the author be liable for any special, indirect or consequential damages or any damages @@ -28,6 +28,9 @@ this software. */ +#include "../../../Common/Common.h" +#if (ARCH == ARCH_AVR8) + #define __INCLUDE_FROM_SERIAL_C #include "../Serial.h" @@ -82,9 +85,35 @@ void Serial_SendString(const char* StringPtr) } } -void Serial_SendData(const uint8_t* Buffer, uint16_t Length) +void Serial_SendData(const uint8_t* Buffer, + uint16_t Length) { while (Length--) Serial_SendByte(*(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); +} + +#endif