From 47f5d8b545eec12ca74d8e7048bb5daa290d937e Mon Sep 17 00:00:00 2001 From: tmk Date: Sun, 20 Feb 2011 17:46:02 +0900 Subject: Synchronous USART support for PS/2 on V-USB stack --- ps2_vusb/sendchar_usart.c | 58 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 ps2_vusb/sendchar_usart.c (limited to 'ps2_vusb/sendchar_usart.c') diff --git a/ps2_vusb/sendchar_usart.c b/ps2_vusb/sendchar_usart.c new file mode 100644 index 0000000000..fe18177a3c --- /dev/null +++ b/ps2_vusb/sendchar_usart.c @@ -0,0 +1,58 @@ +#include +#include "oddebug.h" +#include "sendchar.h" + + +/* from oddebug.h */ +#if defined UBRR +# define ODDBG_UBRR UBRR +#elif defined UBRRL +# define ODDBG_UBRR UBRRL +#elif defined UBRR0 +# define ODDBG_UBRR UBRR0 +#elif defined UBRR0L +# define ODDBG_UBRR UBRR0L +#endif + +#if defined UCR +# define ODDBG_UCR UCR +#elif defined UCSRB +# define ODDBG_UCR UCSRB +#elif defined UCSR0B +# define ODDBG_UCR UCSR0B +#endif + +#if defined TXEN +# define ODDBG_TXEN TXEN +#else +# define ODDBG_TXEN TXEN0 +#endif + +#if defined USR +# define ODDBG_USR USR +#elif defined UCSRA +# define ODDBG_USR UCSRA +#elif defined UCSR0A +# define ODDBG_USR UCSR0A +#endif + +#if defined UDRE +# define ODDBG_UDRE UDRE +#else +# define ODDBG_UDRE UDRE0 +#endif + +#if defined UDR +# define ODDBG_UDR UDR +#elif defined UDR0 +# define ODDBG_UDR UDR0 +#endif + + +/* from oddebug.c */ +int8_t sendchar(uint8_t c) +{ + while(!(ODDBG_USR & (1 << ODDBG_UDRE))); /* wait for data register empty */ + ODDBG_UDR = c; + return 1; +} -- cgit v1.2.3