aboutsummaryrefslogtreecommitdiffstats
path: root/ports/AVR/avr_serial.h
diff options
context:
space:
mode:
authorgdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2009-02-07 10:16:14 +0000
committergdisirio <gdisirio@35acf78f-673a-0410-8e92-d51de3d6d3f4>2009-02-07 10:16:14 +0000
commitaaf826b161d38f5d2139d64b6d18898dbc902b19 (patch)
tree923d06b7fd473d60434eadbb66f9540b38fe469c /ports/AVR/avr_serial.h
parentd5f443f74d551831ef4f93c043f70b53d9b1008b (diff)
downloadChibiOS-aaf826b161d38f5d2139d64b6d18898dbc902b19.tar.gz
ChibiOS-aaf826b161d38f5d2139d64b6d18898dbc902b19.tar.bz2
ChibiOS-aaf826b161d38f5d2139d64b6d18898dbc902b19.zip
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@733 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'ports/AVR/avr_serial.h')
-rw-r--r--ports/AVR/avr_serial.h63
1 files changed, 53 insertions, 10 deletions
diff --git a/ports/AVR/avr_serial.h b/ports/AVR/avr_serial.h
index 555dae522..3b87ff938 100644
--- a/ports/AVR/avr_serial.h
+++ b/ports/AVR/avr_serial.h
@@ -17,33 +17,76 @@
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
+/**
+ * @file ports/AVR/avr_serial.h
+ * @brief AVR Serial driver macros and structures.
+ * @addtogroup AVR_SERIAL
+ * @{
+ */
+
#ifndef _AVR_SERIAL_H_
#define _AVR_SERIAL_H_
-/*
- * Configuration parameter, you can change the depth of the queue buffers
- * depending on the requirements of your application.
+/**
+ * @brief Serial buffers size.
+ * @details Configuration parameter, you can change the depth of the queue
+ * buffers depending on the requirements of your application.
+ * @note The default is 32 bytes for both the transmission and receive buffers.
*/
+#ifndef SERIAL_BUFFERS_SIZE
#define SERIAL_BUFFERS_SIZE 32
+#endif
-//#define USE_AVR_USART0
-#define USE_AVR_USART1
+/**
+ * @brief Default bit rate.
+ * @details Configuration parameter, at startup the UARTs are configured at
+ * this speed.
+ * @note It is possible to use @p SetUART() in order to change the working
+ * parameters at runtime.
+ */
+#if !defined(DEFAULT_USART_BITRATE) || defined(__DOXYGEN__)
+#define DEFAULT_USART_BITRATE 38400
+#endif
-/*
- * Macro for baud rate computation.
+
+/**
+ * @brief USART0 driver enable switch.
+ * @details If set to @p TRUE the support for USART0 is included.
+ * @note The default is @p FALSE.
+ */
+#if !defined(USE_AVR_USART0) || defined(__DOXYGEN__)
+#define USE_AVR_USART0 FALSE
+#endif
+
+/**
+ * @brief USART1 driver enable switch.
+ * @details If set to @p TRUE the support for USART1 is included.
+ * @note The default is @p TRUE.
+ */
+#if !defined(USE_AVR_USART1) || defined(__DOXYGEN__)
+#define USE_AVR_USART1 TRUE
+#endif
+
+/**
+ * @brief Macro for baud rate computation.
+ * @note Make sure the final baud rate is within tolerance.
*/
#define UBRR(b) ((F_CPU / (b << 4)) - 1)
#ifdef __cplusplus
extern "C" {
#endif
- void InitSerial(void);
- void SetUSART0(uint16_t brr, uint8_t csrc);
- void SetUSART1(uint16_t brr, uint8_t csrc);
+ void serial_init(void);
+ void usart0_setup(uint16_t brr, uint8_t csrc);
+ void usart1_setup(uint16_t brr, uint8_t csrc);
#ifdef __cplusplus
}
#endif
+/** @cond never*/
extern FullDuplexDriver SER1, SER2;
+/** @endcond*/
#endif /* _AVR_SERIAL_H_ */
+
+/** @} */