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
40 #define LEDS_AVAILABLE (AO_LED_RED)
41 #define HAS_EXTERNAL_TEMP 0
42 #define HAS_ACCEL_REF 0
47 #if defined(TELEMETRUM_V_1_1)
52 #define HAS_SERIAL_1 1
53 #define USE_SERIAL_STDIN 0
56 #define USE_INTERNAL_FLASH 0
60 #define IGNITE_ON_P2 1
61 #define IGNITE_ON_P0 0
62 #define PACKET_HAS_MASTER 0
63 #define PACKET_HAS_SLAVE 1
66 #define LEDS_AVAILABLE (AO_LED_RED)
67 #define HAS_EXTERNAL_TEMP 0
68 #define HAS_ACCEL_REF 1
69 #define SPI_CS_ON_P1 1
70 #define SPI_CS_ON_P0 0
71 #define M25_CS_MASK 0x02 /* CS0 is P1_1 */
72 #define M25_MAX_CHIPS 1
76 #define ASCENT_SIGNAL P1_2 /* Use CS1 to signal ascent */
77 #define ASCENT_SIGNAL_DIR P1DIR
78 #define ASCENT_SIGNAL_SEL P1SEL
79 #define ASCENT_SIGNAL_PIN 2
82 #if defined(TELEDONGLE_V_0_2)
86 #define HAS_SERIAL_1 0
87 #define USE_SERIAL_STDIN 0
93 #define IGNITE_ON_P2 0
94 #define IGNITE_ON_P0 0
95 #define PACKET_HAS_MASTER 1
96 #define PACKET_HAS_SLAVE 0
98 #define AO_LED_GREEN 2
99 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
100 #define SPI_CS_ON_P1 1
101 #define SPI_CS_ON_P0 0
105 #if defined(TELEMINI_V_0_1)
110 #define HAS_SERIAL_1 0
111 #define USE_SERIAL_STDIN 0
114 #define USE_INTERNAL_FLASH 1
116 #define IGNITE_ON_P2 0
117 #define IGNITE_ON_P0 1
118 #define PACKET_HAS_MASTER 0
119 #define PACKET_HAS_SLAVE 1
120 #define USE_FAST_ASCENT_LOG 1
122 #define AO_LED_GREEN 1
124 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
125 #define HAS_EXTERNAL_TEMP 0
130 #if defined(TELENANO_V_0_1)
135 #define HAS_SERIAL_1 0
136 #define USE_SERIAL_STDIN 0
139 #define USE_INTERNAL_FLASH 1
141 #define IGNITE_ON_P2 0
142 #define IGNITE_ON_P0 1
143 #define PACKET_HAS_MASTER 0
144 #define PACKET_HAS_SLAVE 1
146 #define AO_LED_GREEN 1
148 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
149 #define HAS_EXTERNAL_TEMP 0
154 #if defined(TELEMETRUM_V_0_1)
159 #define HAS_SERIAL_1 1
160 #define USE_SERIAL_STDIN 0
164 #define USE_INTERNAL_FLASH 0
167 #define IGNITE_ON_P2 1
168 #define IGNITE_ON_P0 0
169 #define PACKET_HAS_MASTER 0
170 #define PACKET_HAS_SLAVE 1
172 #define AO_LED_GREEN 1
173 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
174 #define HAS_EXTERNAL_TEMP 1
175 #define HAS_ACCEL_REF 0
176 #define SPI_CS_ON_P1 1
177 #define SPI_CS_ON_P0 0
182 #if defined(TELEDONGLE_V_0_1)
186 #define HAS_SERIAL_1 0
187 #define USE_SERIAL_STDIN 0
193 #define IGNITE_ON_P2 0
194 #define IGNITE_ON_P0 0
195 #define PACKET_HAS_MASTER 1
196 #define PACKET_HAS_SLAVE 0
198 #define AO_LED_GREEN 1
199 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
200 #define SPI_CS_ON_P1 0
201 #define SPI_CS_ON_P0 1
205 #if defined(TIDONGLE)
209 #define HAS_SERIAL_1 0
210 #define USE_SERIAL_STDIN 0
216 #define IGNITE_ON_P2 0
217 #define IGNITE_ON_P0 0
218 #define PACKET_HAS_MASTER 1
219 #define PACKET_HAS_SLAVE 0
221 #define LEDS_AVAILABLE (AO_LED_RED)
222 #define SPI_CS_ON_P1 0
223 #define SPI_CS_ON_P0 1
227 #if defined(TELEBT_V_0_0)
231 #define HAS_SERIAL_1 1
232 #define USE_SERIAL_STDIN 1
239 #define IGNITE_ON_P2 0
240 #define IGNITE_ON_P0 0
241 #define PACKET_HAS_MASTER 1
242 #define PACKET_HAS_SLAVE 0
244 #define AO_LED_GREEN 1
245 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
246 #define SPI_CS_ON_P1 1
247 #define SPI_CS_ON_P0 0
249 #define BT_LINK_ON_P2 1
250 #define BT_LINK_ON_P1 0
251 #define BT_LINK_PIN_INDEX 7
252 #define BT_LINK_PIN P2_1
255 #if defined(TELEBT_V_0_1)
259 #define HAS_SERIAL_1 1
260 #define HAS_SERIAL_1_ALT_1 1
261 #define HAS_SERIAL_1_ALT_2 0
262 #define HAS_SERIAL_1_HW_FLOW 1
263 #define USE_SERIAL_STDIN 1
267 #define USE_INTERNAL_FLASH 0
271 #define IGNITE_ON_P2 0
272 #define IGNITE_ON_P0 0
273 #define PACKET_HAS_MASTER 1
274 #define PACKET_HAS_SLAVE 0
276 #define AO_LED_GREEN 2
277 #define LEDS_AVAILABLE (AO_LED_RED|AO_LED_GREEN)
278 #define SPI_CS_ON_P1 1
279 #define SPI_CS_ON_P0 0
280 #define M25_CS_MASK 0x04 /* CS0 is P1_2 */
281 #define M25_MAX_CHIPS 1
284 #define BT_LINK_ON_P2 0
285 #define BT_LINK_ON_P1 1
286 #define BT_LINK_PIN_INDEX 7
287 #define BT_LINK_PIN P1_7
292 #define DBG_CLOCK (1 << 4) /* mi0 */
293 #define DBG_DATA (1 << 5) /* mo0 */
294 #define DBG_RESET_N (1 << 3) /* c0 */
296 #define DBG_CLOCK_PIN (P1_4)
297 #define DBG_DATA_PIN (P1_5)
298 #define DBG_RESET_N_PIN (P1_3)
300 #define DBG_PORT_NUM 1
302 #define DBG_PORT_SEL P1SEL
303 #define DBG_PORT_INP P1INP
304 #define DBG_PORT_DIR P1DIR
306 #endif /* DBG_ON_P1 */
310 #define DBG_CLOCK (1 << 3)
311 #define DBG_DATA (1 << 4)
312 #define DBG_RESET_N (1 << 5)
314 #define DBG_CLOCK_PIN (P0_3)
315 #define DBG_DATA_PIN (P0_4)
316 #define DBG_RESET_N_PIN (P0_5)
318 #define DBG_PORT_NUM 0
320 #define DBG_PORT_SEL P0SEL
321 #define DBG_PORT_INP P0INP
322 #define DBG_PORT_DIR P0DIR
324 #endif /* DBG_ON_P0 */
327 #define SPI_CS_PORT P1
328 #define SPI_CS_SEL P1SEL
329 #define SPI_CS_DIR P1DIR
333 #define SPI_CS_PORT P0
334 #define SPI_CS_SEL P0SEL
335 #define SPI_CS_DIR P0DIR
339 #error Please define IGNITE_ON_P2
343 #error Please define IGNITE_ON_P0
347 #error Please define HAS_SERIAL_1
350 #ifndef USE_SERIAL_STDIN
351 #error Please define USE_SERIAL_STDIN
355 #error Please define HAS_ADC
359 #error Please define HAS_EEPROM
363 #ifndef USE_INTERNAL_FLASH
364 #error Please define USE_INTERNAL_FLASH
369 #error Please define HAS_DBG
373 #error Please define HAS_IGNITE
376 #ifndef PACKET_HAS_MASTER
377 #error Please define PACKET_HAS_MASTER
380 #ifndef PACKET_HAS_SLAVE
381 #error Please define PACKET_HAS_SLAVE
384 #endif /* _AO_PINS_H_ */