altos: Add TeleMini v1.0
authorKeith Packard <keithp@keithp.com>
Mon, 7 Mar 2011 05:03:57 +0000 (21:03 -0800)
committerKeith Packard <keithp@keithp.com>
Wed, 16 Mar 2011 22:57:38 +0000 (15:57 -0700)
This adds initial code for the telemini board, a two channel
flight computer with digital telemetry and a barometric sensor.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/Makefile
src/Makefile.proto
src/ao_pins.h
src/ao_telemini.c [new file with mode: 0644]
src/telemini-v0.1/.gitignore [new file with mode: 0644]
src/telemini-v0.1/.sdcdbrc [new file with mode: 0644]
src/telemini-v0.1/Makefile [new file with mode: 0644]
src/telemini-v0.1/Makefile.defs [new file with mode: 0644]

index a6615321e9f564402e6ce3a19eceaa1619338b4b..42383f88d9d7e5e46c32172a612f92adfad58f7f 100644 (file)
@@ -6,7 +6,12 @@ CC=sdcc
 
 include Version
 
 
 include Version
 
-SUBDIRS=telemetrum-v1.1 telemetrum-v1.0 teledongle-v0.2 telemetrum-v0.1-sky telemetrum-v0.1-sirf teledongle-v0.1 tidongle test
+SUBDIRS=\
+       telemetrum-v1.1 telemetrum-v1.0 \
+       teledongle-v0.2 teledongle-v0.1 \
+       telemini-v0.1 \
+       telemetrum-v0.1-sky telemetrum-v0.1-sirf \
+       tidongle test
 
 all: all-recursive
 
 
 all: all-recursive
 
index 30cd57981ae7a79504d26698f903c30d2c27605c..625ca459f58e20916978b565272e7e2217a42a8e 100644 (file)
@@ -159,6 +159,33 @@ TM_BASE_SRC = \
        $(TM_TASK_SRC) \
        $(TM_MAIN_SRC)
 
        $(TM_TASK_SRC) \
        $(TM_MAIN_SRC)
 
+#
+# Sources for TeleMini
+TMINI_DRIVER_SRC = \
+       ao_adc.c \
+       ao_ignite.c \
+       ao_config.c \
+       ao_storage.c \
+       ao_intflash.c
+
+TMINI_TASK_SRC = \
+       ao_flight.c \
+       ao_log.c \
+       ao_report.c \
+       ao_telemetry.c
+
+TMINI_MAIN_SRC = \
+       ao_telemini.c
+
+TMINI_BASE_SRC = \
+       $(ALTOS_SRC) \
+       $(ALTOS_DRIVER_SRC) \
+       $(TELE_DRIVER_SRC) \
+       $(TELE_COMMON_SRC) \
+       $(TMINI_DRIVER_SRC) \
+       $(TMINI_TASK_SRC) \
+       $(TMINI_MAIN_SRC)
+
 TI_MAIN_SRC = \
        ao_tidongle.c
 
 TI_MAIN_SRC = \
        ao_tidongle.c
 
index a486b9ba2fe16c722d6bfc9f5f2c3129debc8a13..8e07be86557ec79f6e5aed14e59b8354606429b9 100644 (file)
        #define SPI_CS_ON_P0            0
 #endif
 
        #define SPI_CS_ON_P0            0
 #endif
 
+#if defined(TELEMINI_V_0_1)
+       #define HAS_FLIGHT              1
+       #define HAS_USB                 0
+       #define HAS_BEEP                0
+       #define HAS_GPS                 0
+       #define HAS_SERIAL_1            0
+       #define HAS_ADC                 1
+       #define HAS_EEPROM              1
+       #define HAS_DBG                 0
+       #define PACKET_HAS_MASTER       0
+       #define PACKET_HAS_SLAVE        1
+
+       #define AO_LED_GREEN            1
+       #define AO_LED_RED              2
+       #define LEDS_AVAILABLE          (AO_LED_RED|AO_LED_GREEN)
+       #define HAS_EXTERNAL_TEMP       0
+       #define HAS_ACCEL               0
+#endif
+
 #if defined(TELEMETRUM_V_0_1)
        #define HAS_FLIGHT              1
        #define HAS_USB                 1
 #if defined(TELEMETRUM_V_0_1)
        #define HAS_FLIGHT              1
        #define HAS_USB                 1
diff --git a/src/ao_telemini.c b/src/ao_telemini.c
new file mode 100644 (file)
index 0000000..97bc2cf
--- /dev/null
@@ -0,0 +1,51 @@
+/*
+ * Copyright © 2011 Keith Packard <keithp@keithp.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; version 2 of the License.
+ *
+ * This program is distributed in the hope that it will be useful, but
+ * WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, write to the Free Software Foundation, Inc.,
+ * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
+ */
+
+#include "ao.h"
+#include "ao_pins.h"
+
+/* stub so as telemini doesn't have monitor mode */
+void
+ao_set_monitor(uint8_t monitoring)
+{
+       (void) monitoring;
+}
+
+void
+main(void)
+{
+       ao_clock_init();
+
+
+       /* Turn on the red LED until the system is stable */
+       ao_led_init(LEDS_AVAILABLE);
+       ao_led_on(AO_LED_RED);
+
+       ao_timer_init();
+       ao_adc_init();
+       ao_cmd_init();
+       ao_storage_init();
+       ao_flight_init();
+       ao_log_init();
+       ao_report_init();
+       ao_telemetry_init();
+       ao_radio_init();
+       ao_packet_slave_init();
+       ao_igniter_init();
+       ao_config_init();
+       ao_start_scheduler();
+}
diff --git a/src/telemini-v0.1/.gitignore b/src/telemini-v0.1/.gitignore
new file mode 100644 (file)
index 0000000..82868aa
--- /dev/null
@@ -0,0 +1,2 @@
+telemini-*
+ao_product.h
diff --git a/src/telemini-v0.1/.sdcdbrc b/src/telemini-v0.1/.sdcdbrc
new file mode 100644 (file)
index 0000000..710b4a2
--- /dev/null
@@ -0,0 +1 @@
+--directory=..
diff --git a/src/telemini-v0.1/Makefile b/src/telemini-v0.1/Makefile
new file mode 100644 (file)
index 0000000..d8867b1
--- /dev/null
@@ -0,0 +1 @@
+include ../Makefile.proto
diff --git a/src/telemini-v0.1/Makefile.defs b/src/telemini-v0.1/Makefile.defs
new file mode 100644 (file)
index 0000000..8a3e1ef
--- /dev/null
@@ -0,0 +1,8 @@
+PROG = telemini-v0.1-$(VERSION).ihx
+
+SRC = \
+       $(TMINI_BASE_SRC)
+
+PRODUCT=TeleMini-v0.1
+PRODUCT_DEF=-DTELEMINI_V_0_1
+IDPRODUCT=0x000a