1 | /*
|
2 | * UART.h
|
3 | *
|
4 | * Created on: Feb 28, 2011
|
5 | * Author: toti
|
6 | */
|
7 |
|
8 | #ifndef UART_H_
|
9 | #define UART_H_
|
10 |
|
11 | #include <avr/io.h>
|
12 | #include "regs.h"
|
13 | #include <util/delay.h>
|
14 | #include <avr/interrupt.h>
|
15 |
|
16 | #define XON 17
|
17 | #define XOFF 19
|
18 |
|
19 | #define FOSC 8000000 // Clock Speed
|
20 | #define BAUD 9600
|
21 | #define MYUBRR FOSC/16/BAUD-1
|
22 | #define UART_RX_BUFFER_SIZE 64
|
23 | #define UART_RX_BUFFER_MASK (UART_RX_BUFFER_SIZE - 1)
|
24 | #define UART_TX_BUFFER_SIZE 64
|
25 | #define UART_TX_BUFFER_MASK (UART_TX_BUFFER_SIZE - 1)
|
26 |
|
27 |
|
28 | /*
|
29 | ** high byte error return code of uart_getc()
|
30 | */
|
31 | #define UART_FRAME_ERROR 0x0800 /* Framing Error by UART */
|
32 | #define UART_OVERRUN_ERROR 0x0400 /* Overrun condition by UART */
|
33 | #define UART_BUFFER_OVERFLOW 0x0200 /* receive ringbuffer overflow */
|
34 | #define UART_NO_DATA 0x0100 /* no receive data available */
|
35 |
|
36 | //void send_as_bytes(uint8_t length, char *s);
|
37 | void init_USART();
|
38 | void sendchar(unsigned char c);
|
39 | void sendUSART(char *s);
|
40 | unsigned int uart_getc(void);
|
41 | void uart_putc_buffert(unsigned char data);
|
42 |
|
43 |
|
44 | #endif /* UART_H_ */
|