You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.0 KiB
59 lines
1.0 KiB
#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;
|
|
}
|