59 lines
1 KiB
C
59 lines
1 KiB
C
|
#include <stdint.h>
|
||
|
#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;
|
||
|
}
|