2 * Copyright © 2010 Keith Packard <keithp@keithp.com>
4 * This program is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; version 2 of the License.
8 * This program is distributed in the hope that it will be useful, but
9 * WITHOUT ANY WARRANTY; without even the implied warranty of
10 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 * General Public License for more details.
13 * You should have received a copy of the GNU General Public License along
14 * with this program; if not, write to the Free Software Foundation, Inc.,
15 * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
21 #if defined(TELEMETRUM_V_1_0)
26 #define HAS_SERIAL_1 1
28 #define USE_SERIAL_STDIN 0
30 #define USE_INTERNAL_FLASH 0
34 #define IGNITE_ON_P2 1
35 #define IGNITE_ON_P0 0
36 #define PACKET_HAS_MASTER 0
37 #define PACKET_HAS_SLAVE 1
39 #define HAS_COMPANION 1
40 #define COMPANION_CS_ON_P1 1
41 #define COMPANION_CS_MASK 0x4 /* CS1 is P1_2 */
42 #define COMPANION_CS P1_2
45 #define LEDS_AVAILABLE (AO_LED_RED)
46 #define HAS_EXTERNAL_TEMP 0
47 #define HAS_ACCEL_REF 0
53 #if defined(TELEMETRUM_V_1_1)
58 #define HAS_SERIAL_1 1
59 #define USE_SERIAL_STDIN 0
62 #define USE_INTERNAL_FLASH 0
66 #define IGNITE_ON_P2 1
67 #define IGNITE_ON_P0 0
68 #define PACKET_HAS_MASTER 0
69 #define PACKET_HAS_SLAVE 1
71 #define HAS_COMPANION 1
72 #define COMPANION_CS_ON_P1 1
73 #define COMPANION_CS_MASK 0x4 /* CS1 is P1_2 */
74 #define COMPANION_CS P1_2
77 #define LEDS_AVAILABLE (AO_LED_RED)
78 #define HAS_EXTERNAL_TEMP 0
79 #define HAS_ACCEL_REF 1
80 #define SPI_CS_ON_P1 1
81 #define SPI_CS_ON_P0 0
82 #define M25_CS_MASK 0x02 /* CS0 is P1_1 */
83 #define M25_MAX_CHIPS 1
89 #if defined(TELEDONGLE_V_0_2)
93 #define HAS_SERIAL_1 0
94 #define USE_SERIAL_STDIN 0
100 #define IGNITE_ON_P2 0
101 #define IGNITE_ON_P0 0
102 #define PACKET_HAS_MASTER 1
103 #define PACKET_HAS_SLAVE 0
105 #define AO_LED_GREEN 2
106 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
107 #define SPI_CS_ON_P1 1
108 #define SPI_CS_ON_P0 0
110 #define HAS_MONITOR 1
113 #if defined(TELEMINI_V_1_0)
118 #define HAS_SERIAL_1 0
119 #define USE_SERIAL_STDIN 0
122 #define USE_INTERNAL_FLASH 1
124 #define IGNITE_ON_P2 0
125 #define IGNITE_ON_P0 1
126 #define PACKET_HAS_MASTER 0
127 #define PACKET_HAS_SLAVE 1
128 #define USE_FAST_ASCENT_LOG 1
130 #define AO_LED_GREEN 1
132 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
133 #define HAS_EXTERNAL_TEMP 0
136 #define HAS_MONITOR 0
139 #if defined(TELENANO_V_0_1)
144 #define HAS_SERIAL_1 0
145 #define USE_SERIAL_STDIN 0
148 #define USE_INTERNAL_FLASH 1
150 #define IGNITE_ON_P2 0
151 #define IGNITE_ON_P0 1
152 #define PACKET_HAS_MASTER 0
153 #define PACKET_HAS_SLAVE 1
155 #define AO_LED_GREEN 1
157 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
158 #define HAS_EXTERNAL_TEMP 0
161 #define HAS_MONITOR 0
164 #if defined(TELEMETRUM_V_0_1)
169 #define HAS_SERIAL_1 1
170 #define USE_SERIAL_STDIN 0
174 #define USE_INTERNAL_FLASH 0
177 #define IGNITE_ON_P2 1
178 #define IGNITE_ON_P0 0
179 #define PACKET_HAS_MASTER 0
180 #define PACKET_HAS_SLAVE 1
182 #define AO_LED_GREEN 1
183 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
184 #define HAS_EXTERNAL_TEMP 1
185 #define HAS_ACCEL_REF 0
186 #define SPI_CS_ON_P1 1
187 #define SPI_CS_ON_P0 0
190 #define HAS_MONITOR 0
193 #if defined(TELEDONGLE_V_0_1)
197 #define HAS_SERIAL_1 0
198 #define USE_SERIAL_STDIN 0
204 #define IGNITE_ON_P2 0
205 #define IGNITE_ON_P0 0
206 #define PACKET_HAS_MASTER 1
207 #define PACKET_HAS_SLAVE 0
209 #define AO_LED_GREEN 1
210 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
211 #define SPI_CS_ON_P1 0
212 #define SPI_CS_ON_P0 1
214 #define HAS_MONITOR 1
217 #if defined(TIDONGLE)
221 #define HAS_SERIAL_1 0
222 #define USE_SERIAL_STDIN 0
228 #define IGNITE_ON_P2 0
229 #define IGNITE_ON_P0 0
230 #define PACKET_HAS_MASTER 1
231 #define PACKET_HAS_SLAVE 0
233 #define LEDS_AVAILABLE (AO_LED_RED)
234 #define SPI_CS_ON_P1 0
235 #define SPI_CS_ON_P0 1
237 #define HAS_MONITOR 1
240 #if defined(TELEBT_V_0_0)
244 #define HAS_SERIAL_1 1
245 #define USE_SERIAL_STDIN 1
252 #define IGNITE_ON_P2 0
253 #define IGNITE_ON_P0 0
254 #define PACKET_HAS_MASTER 1
255 #define PACKET_HAS_SLAVE 0
257 #define AO_LED_GREEN 1
258 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
259 #define SPI_CS_ON_P1 1
260 #define SPI_CS_ON_P0 0
262 #define BT_LINK_ON_P2 1
263 #define BT_LINK_ON_P1 0
264 #define BT_LINK_PIN_INDEX 7
265 #define BT_LINK_PIN P2_1
266 #define HAS_MONITOR 1
269 #if defined(TELEBT_V_0_1)
273 #define HAS_SERIAL_1 1
274 #define HAS_SERIAL_1_ALT_1 1
275 #define HAS_SERIAL_1_ALT_2 0
276 #define HAS_SERIAL_1_HW_FLOW 1
277 #define USE_SERIAL_STDIN 1
281 #define USE_INTERNAL_FLASH 0
285 #define IGNITE_ON_P2 0
286 #define IGNITE_ON_P0 0
287 #define PACKET_HAS_MASTER 1
288 #define PACKET_HAS_SLAVE 0
290 #define AO_LED_GREEN 2
291 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
292 #define SPI_CS_ON_P1 1
293 #define SPI_CS_ON_P0 0
294 #define M25_CS_MASK 0x04 /* CS0 is P1_2 */
295 #define M25_MAX_CHIPS 1
298 #define BT_LINK_ON_P2 0
299 #define BT_LINK_ON_P1 1
300 #define BT_LINK_PIN_INDEX 7
301 #define BT_LINK_PIN P1_7
302 #define HAS_MONITOR 1
307 #define DBG_CLOCK (1 << 4) /* mi0 */
308 #define DBG_DATA (1 << 5) /* mo0 */
309 #define DBG_RESET_N (1 << 3) /* c0 */
311 #define DBG_CLOCK_PIN (P1_4)
312 #define DBG_DATA_PIN (P1_5)
313 #define DBG_RESET_N_PIN (P1_3)
315 #define DBG_PORT_NUM 1
317 #define DBG_PORT_SEL P1SEL
318 #define DBG_PORT_INP P1INP
319 #define DBG_PORT_DIR P1DIR
321 #endif /* DBG_ON_P1 */
325 #define DBG_CLOCK (1 << 3)
326 #define DBG_DATA (1 << 4)
327 #define DBG_RESET_N (1 << 5)
329 #define DBG_CLOCK_PIN (P0_3)
330 #define DBG_DATA_PIN (P0_4)
331 #define DBG_RESET_N_PIN (P0_5)
333 #define DBG_PORT_NUM 0
335 #define DBG_PORT_SEL P0SEL
336 #define DBG_PORT_INP P0INP
337 #define DBG_PORT_DIR P0DIR
339 #endif /* DBG_ON_P0 */
341 #if COMPANION_CS_ON_P1
342 #define COMPANION_CS_PORT P1
343 #define COMPANION_CS_SEL P1SEL
344 #define COMPANION_CS_DIR P1DIR
348 #define SPI_CS_PORT P1
349 #define SPI_CS_SEL P1SEL
350 #define SPI_CS_DIR P1DIR
354 #define SPI_CS_PORT P0
355 #define SPI_CS_SEL P0SEL
356 #define SPI_CS_DIR P0DIR
360 #error Please define IGNITE_ON_P2
364 #error Please define IGNITE_ON_P0
368 #error Please define HAS_SERIAL_1
371 #ifndef USE_SERIAL_STDIN
372 #error Please define USE_SERIAL_STDIN
376 #error Please define HAS_ADC
380 #error Please define HAS_EEPROM
384 #ifndef USE_INTERNAL_FLASH
385 #error Please define USE_INTERNAL_FLASH
390 #error Please define HAS_DBG
394 #error Please define HAS_IGNITE
397 #ifndef PACKET_HAS_MASTER
398 #error Please define PACKET_HAS_MASTER
401 #ifndef PACKET_HAS_SLAVE
402 #error Please define PACKET_HAS_SLAVE
406 #error Please define HAS_MONITOR
408 #endif /* _AO_PINS_H_ */