ChibiOS/RT Architecture - Reference Manual - Guides |
00001 /* 00002 ChibiOS/RT - Copyright (C) 2006,2007,2008,2009,2010 Giovanni Di Sirio. 00003 00004 This file is part of ChibiOS/RT. 00005 00006 ChibiOS/RT is free software; you can redistribute it and/or modify 00007 it under the terms of the GNU General Public License as published by 00008 the Free Software Foundation; either version 3 of the License, or 00009 (at your option) any later version. 00010 00011 ChibiOS/RT is distributed in the hope that it will be useful, 00012 but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00014 GNU General Public License for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with this program. If not, see <http://www.gnu.org/licenses/>. 00018 00019 --- 00020 00021 A special exception to the GPL can be applied should you wish to distribute 00022 a combined work that includes ChibiOS/RT, without being obliged to provide 00023 the source code for any proprietary components. See the file exception.txt 00024 for full details of how and when the exception can be applied. 00025 */ 00026 00027 /** 00028 * @file templates/serial_lld.c 00029 * @brief Serial Driver subsystem low level driver source template. 00030 * 00031 * @addtogroup SERIAL_LLD 00032 * @{ 00033 */ 00034 00035 #include "ch.h" 00036 #include "hal.h" 00037 00038 #if CH_HAL_USE_SERIAL || defined(__DOXYGEN__) 00039 00040 /*===========================================================================*/ 00041 /* Driver exported variables. */ 00042 /*===========================================================================*/ 00043 00044 /*===========================================================================*/ 00045 /* Driver local variables. */ 00046 /*===========================================================================*/ 00047 00048 /** 00049 * @brief Driver default configuration. 00050 */ 00051 static const SerialConfig default_config = { 00052 }; 00053 00054 /*===========================================================================*/ 00055 /* Driver local functions. */ 00056 /*===========================================================================*/ 00057 00058 /*===========================================================================*/ 00059 /* Driver interrupt handlers. */ 00060 /*===========================================================================*/ 00061 00062 /*===========================================================================*/ 00063 /* Driver exported functions. */ 00064 /*===========================================================================*/ 00065 00066 /** 00067 * @brief Low level serial driver initialization. 00068 */ 00069 void sd_lld_init(void) { 00070 00071 } 00072 00073 /** 00074 * @brief Low level serial driver configuration and (re)start. 00075 * 00076 * @param[in] sdp pointer to a @p SerialDriver object 00077 * @param[in] config the architecture-dependent serial driver configuration. 00078 * If this parameter is set to @p NULL then a default 00079 * configuration is used. 00080 */ 00081 void sd_lld_start(SerialDriver *sdp, const SerialConfig *config) { 00082 00083 if (config == NULL) 00084 config = &default_config; 00085 00086 } 00087 00088 /** 00089 * @brief Low level serial driver stop. 00090 * @details De-initializes the USART, stops the associated clock, resets the 00091 * interrupt vector. 00092 * 00093 * @param[in] sdp pointer to a @p SerialDriver object 00094 */ 00095 void sd_lld_stop(SerialDriver *sdp) { 00096 00097 } 00098 00099 #endif /* CH_HAL_USE_SERIAL */ 00100 00101 /** @} */