]> git.cryptolib.org Git - avr-crypto-lib.git/blob - uart.h
insereated GPLv3 stub
[avr-crypto-lib.git] / uart.h
1 /* uart.h */
2 /*
3     This file is part of the Crypto-avr-lib/microcrypt-lib.
4     Copyright (C) 2008  Daniel Otte (daniel.otte@rub.de)
5
6     This program is free software: you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation, either version 3 of the License, or
9     (at your option) any later version.
10
11     This program is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14     GNU General Public License for more details.
15
16     You should have received a copy of the GNU General Public License
17     along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 */
19 #ifndef UART_H
20 #define UART_H
21
22 /**
23  * UART Library
24  *
25  * #define F_CPU 16000000         // Oszillator-Frequenz in Hz
26  * #define UART_INTERRUPT 1
27  * #define UART_BAUD_RATE 19200
28  * #define UART_RXBUFSIZE 16
29  * #define UART_TXBUFSIZE 16
30  * #define UART_LINE_BUFFER_SIZE 40
31  * #define UART_LEDS             // LED1 and LED2 toggle on tx and rx interrupt
32  *
33  */
34
35
36 #include "config.h"
37 #include <inttypes.h>
38 #include <avr/pgmspace.h>
39
40 void uart_init(void);
41
42 void uart_putc(char c);
43 void uart_putstr(char * str);
44 void uart_putstr_P(PGM_P str);
45 void uart_hexdump(const void* buf, int len);
46
47 char uart_getc(void);
48 char uart_getc_nb(char *c);             /* returns 1 on success */
49
50 /*
51   get one Cariage return terminated line
52   echo charakters back on Uart
53   returns buffer with zero terminated line on success, 0 pointer otherwise
54 */
55 char * uart_getline_nb(void);
56
57 #endif