Add test app for at91sam7s.
[bertos.git] / app / at91sam7s / appconfig.h
1 /**
2  * \file
3  * <!--
4  * Copyright 2003, 2004, 2006 Develer S.r.l. (http://www.develer.com/)
5  * This file is part of DevLib - See README.devlib for information.
6  * -->
7  *
8  * \brief DevLib configuration options
9  *
10  * You should copy this header in your project and rename it to
11  * "config.h" and delete the CONFIG_ macros for the modules
12  * you're not using.
13  *
14  * <h2>Working with multiple applications</h2>
15  *
16  * If your project is made of multiple DevLib-based applications,
17  * create a custom "config.h" file in each application subdirectory
18  * and play with the compiler include path to get the desired result.
19  * You can share common options by creationg a "config_common.h" header
20  * and including it from all your "config.h" copies.
21  *
22  * <h2>Configuration style</h2>
23  *
24  * For improved compile-time checking of configuration options,
25  * the preferred way to use a \c CONFIG_ symbol is keeping it
26  * always defined with a value of either 0 or 1.  This lets
27  * you write tests like this:
28  *
29  * \code
30  *  #if CONFIG_FOO
31  *  void foo(void)
32  *  {
33  *      if (CONFIG_BAR)
34  *          bar();
35  *  }
36  *  #endif // CONFIG_FOO
37  * \endcode
38  *
39  * In most cases, we rely on the optimizer to discard checks
40  * on constant values and performing dead-code elimination.
41  *
42  * \version $Id$
43  * \author Bernardo Innocenti <bernie@develer.com>
44  * \author Stefano Fedrigo <aleph@develer.com>
45  */
46
47 #ifndef APPCONFIG_H
48 #define APPCONFIG_H
49
50 /** Baud-rate for the kdebug console */
51 #define CONFIG_KDEBUG_BAUDRATE  115200
52
53 /**
54  * printf()-style formatter configuration.
55  *
56  * \sa PRINTF_DISABLED
57  * \sa PRINTF_NOMODIFIERS
58  * \sa PRINTF_REDUCED
59  * \sa PRINTF_NOFLOAT
60  * \sa PRINTF_FULL
61  */
62 #define CONFIG_PRINTF PRINTF_FULL
63
64 /**
65  * Multithreading kernel.
66  *
67  * \sa config_kern.h
68  */
69 #define CONFIG_KERNEL 0
70
71 /**
72  * \name Serial driver parameters
73  * \{
74  */
75         /** [bytes] Size of the outbound FIFO buffer for port 0. */
76         #define CONFIG_UART0_TXBUFSIZE  32
77
78         /** [bytes] Size of the inbound FIFO buffer for port 0. */
79         #define CONFIG_UART0_RXBUFSIZE  64
80
81         /** [bytes] Size of the outbound FIFO buffer for port 1. */
82         #define CONFIG_UART1_TXBUFSIZE  32
83
84         /** [bytes] Size of the inbound FIFO buffer for port 1. */
85         #define CONFIG_UART1_RXBUFSIZE  64
86
87         /** [bytes] Size of the outbound FIFO buffer for SPI port (AVR only). */
88         #define CONFIG_SPI_TXBUFSIZE    16
89
90         /** [bytes] Size of the inbound FIFO buffer for SPI port (AVR only). */
91         #define CONFIG_SPI_RXBUFSIZE    32
92
93         /** SPI data order (AVR only). */
94         #define CONFIG_SPI_DATA_ORDER   SER_MSB_FIRST
95
96         /** SPI clock division factor (AVR only). */
97         #define CONFIG_SPI_CLOCK_DIV    16
98
99         /** SPI clock polarity: 0 = normal low, 1 = normal high (AVR only). */
100         #define CONFIG_SPI_CLOCK_POL    0
101
102         /** SPI clock phase: 0 = sample on first edge, 1 = sample on second clock edge (AVR only). */
103         #define CONFIG_SPI_CLOCK_PHASE  0
104
105         /** Default transmit timeout (ms). Set to -1 to disable timeout support */
106         #define CONFIG_SER_TXTIMEOUT    -1
107
108         /** Default receive timeout (ms). Set to -1 to disable timeout support */
109         #define CONFIG_SER_RXTIMEOUT    -1
110
111         /** Use RTS/CTS handshake */
112         #define CONFIG_SER_HWHANDSHAKE   0
113
114         /** Default baud rate (set to 0 to disable) */
115         #define CONFIG_SER_DEFBAUDRATE   0
116
117         /** Enable ser_gets() and ser_gets_echo() */
118         #define CONFIG_SER_GETS          0
119
120         /** Enable second serial port in emulator. */
121         #define CONFIG_EMUL_UART1        0
122
123         /**
124          * Transmit always something on serial port 0 TX
125          * to avoid interference when sending burst of data,
126          * using AVR multiprocessor serial mode
127          */
128         #define CONFIG_SER_TXFILL        0
129
130         #define CONFIG_SER_STROBE        0
131 /*\}*/
132
133 /// Hardware timer selection for drv/timer.c
134 #define CONFIG_TIMER  TIMER_DEFAULT
135
136 /// Debug timer interrupt using a strobe pin.
137 #define CONFIG_TIMER_STROBE  0
138
139 /// Enable ADS strobe.
140 #define CONFIG_ADC_STROBE  0
141
142 /// Enable watchdog timer.
143 #define CONFIG_WATCHDOG  0
144
145 /// EEPROM type for drv/eeprom.c
146 #define CONFIG_EEPROM_TYPE EEPROM_24XX256
147
148 /// Select bitmap pixel format.
149 #define CONFIG_BITMAP_FMT  BITMAP_FMT_PLANAR_V_LSB
150
151 /// Enable line clipping algorithm.
152 #define CONFIG_GFX_CLIPPING  1
153
154 /// Enable text rendering in bitmaps.
155 #define CONFIG_GFX_TEXT  1
156
157 /// Enable virtual coordinate system.
158 #define CONFIG_GFX_VCOORDS  1
159
160 /// Keyboard polling method
161 #define CONFIG_KBD_POLL  KBD_POLL_SOFTINT
162
163 /// Enable keyboard event delivery to observers
164 #define CONFIG_KBD_OBSERVER  0
165
166 /// Enable key beeps
167 #define CONFIG_KBD_BEEP  1
168
169 /// Enable long pression handler for keys
170 #define CONFIG_KBD_LONGPRESS  1
171
172 /**
173  * \name Type for the chart dataset
174  * \{
175  */
176 #define CONFIG_CHART_TYPE_X uint8_t
177 #define CONFIG_CHART_TYPE_Y uint8_t
178 /*\}*/
179
180 /// Enable button bar behind menus
181 #define CONFIG_MENU_MENUBAR  0
182
183 /// Enable smooth scrolling in menus
184 #define CONFIG_MENU_SMOOTH  1
185
186 #endif /* APPCONFIG_COMMON_H */