NIBO Library  2.11
nibo/uart1.h
gehe zur Dokumentation dieser Datei
00001 /*  BSD-License:
00002 
00003 Copyright (c) 2007 by Nils Springob, nicai-systems, Germany
00004 
00005 All rights reserved.
00006 
00007 Redistribution and use in source and binary forms, with or without modification,
00008 are permitted provided that the following conditions are met:
00009 
00010   * Redistributions of source code must retain the above copyright notice,
00011     this list of conditions and the following disclaimer.
00012   * Redistributions in binary form must reproduce the above copyright notice,
00013     this list of conditions and the following disclaimer in the documentation
00014     and/or other materials provided with the distribution.
00015   * Neither the name nicai-systems nor the names of its contributors may be
00016     used to endorse or promote products derived from this software without
00017     specific prior written permission.
00018 
00019 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
00020 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
00021 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
00022 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
00023 CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
00024 EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
00025 PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
00026 PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
00027 LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00028 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
00029 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00030 
00031 */
00032 
00039 #ifndef NIBO_UART1_H_
00040 #define NIBO_UART1_H_
00041 #if defined(NIBO_USE_UART1) || defined (DOXYGEN)
00042 
00043 #include <stdint.h>
00044 
00045 #ifdef __cplusplus
00046 extern "C" {
00047 #endif
00048 
00049 
00050 #define UART1_TXBUF_SIZE 8
00051 #define UART1_RXBUF_SIZE 8
00052 
00056 void uart1_set_baudrate(uint16_t baud);
00057 
00058 extern uint8_t uart1_txbuf[UART1_TXBUF_SIZE];
00059 extern uint8_t uart1_rxbuf[UART1_RXBUF_SIZE];
00060 
00061 extern uint8_t uart1_txbuf_begin;
00062 extern uint8_t uart1_txbuf_end;
00063 
00064 extern uint8_t uart1_rxbuf_begin;
00065 extern uint8_t uart1_rxbuf_end;
00066 
00070 void uart1_enable();
00071 
00075 void uart1_disable();
00076 
00077 
00082 char uart1_getchar();
00083 
00084 
00089 char uart1_putchar(char c);
00090 
00091 
00095 static inline char uart1_rxempty() {
00096   return uart1_rxbuf_begin==uart1_rxbuf_end;
00097 }
00098 
00099 
00103 static inline char uart1_txempty() {
00104   return uart1_txbuf_begin==uart1_txbuf_end;
00105 }
00106 
00107 
00111 static inline char uart1_rxfull() {
00112   return uart1_rxbuf_end==UART1_RXBUF_SIZE;
00113 }
00114 
00115 
00119 static inline char uart1_txfull() {
00120   return uart1_txbuf_end==UART1_TXBUF_SIZE;
00121 }
00122 
00123 #ifdef __cplusplus
00124 } // extern "C"
00125 #endif
00126 
00127 #endif // NIBO_USE_UART1
00128 #endif // NIBO_UART1_H_

Erzeugt am Fre Jun 3 2011 15:48:39 für NIBO Library von doxygen 1.7.4-20110426