summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ao-bringup/Makefile12
-rw-r--r--ao-bringup/ao_led_blink.c50
-rw-r--r--ao-bringup/testplan17
3 files changed, 77 insertions, 2 deletions
diff --git a/ao-bringup/Makefile b/ao-bringup/Makefile
index 805b2550..cacbc161 100644
--- a/ao-bringup/Makefile
+++ b/ao-bringup/Makefile
@@ -17,7 +17,12 @@ XMIT_SRC = \
ao_radio_xmit.c
XMIT_REL=$(XMIT_SRC:.c=.rel) $(BRINGUP_REL)
-SRC=$(BRINGUP_SRC) $(XMIT_SRC)
+LED_SRC = \
+ ao_led_blink.c
+
+LED_REL=$(LED_SRC:.c=.rel) $(BRINGUP_REL)
+
+SRC=$(BRINGUP_SRC) $(XMIT_SRC) $(LED_SRC)
ADB=$(SRC:.c=.adb)
ASM=$(SRC:.c=.asm)
@@ -27,7 +32,7 @@ REL=$(SRC:.c=.rel)
RST=$(SRC:.c=.rst)
SYM=$(SRC:.c=.sym)
-PROGS=ao_radio_xmit.ihx
+PROGS=ao_radio_xmit.ihx ao_led_blink.ihx
PCDB=$(PROGS:.ihx=.cdb)
PLNK=$(PROGS:.ihx=.lnk)
@@ -43,6 +48,9 @@ all: $(PROGS)
ao_radio_xmit.ihx: $(XMIT_REL)
$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(XMIT_REL)
+ao_led_blink.ihx: $(LED_REL)
+ $(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(LED_REL)
+
clean:
rm -f $(ADB) $(ASM) $(LNK) $(LST) $(REL) $(RST) $(SYM)
rm -f $(PROGS) $(PCDB) $(PLNK) $(PMAP) $(PMEM) $(PAOM)
diff --git a/ao-bringup/ao_led_blink.c b/ao-bringup/ao_led_blink.c
new file mode 100644
index 00000000..1e4c143d
--- /dev/null
+++ b/ao-bringup/ao_led_blink.c
@@ -0,0 +1,50 @@
+/*
+ * Copyright © 2010 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_bringup.h"
+
+#define nop() _asm nop _endasm;
+
+void
+delay (unsigned char n)
+{
+ unsigned char i = 0, j = 0;
+
+ n <<= 1;
+ while (--n != 0)
+ while (--j != 0)
+ while (--i != 0)
+ nop();
+}
+
+main()
+{
+ ao_init();
+ /* Set p1_0 and p1_1 to output */
+ P1DIR = 0x03;
+ P1INP = 0x00;
+ for (;;) {
+ P1 = 1;
+ delay(5);
+ P1 = 2;
+ delay(5);
+ P1 = 3;
+ delay(5);
+ P1 = 0;
+ delay(5);
+ }
+}
diff --git a/ao-bringup/testplan b/ao-bringup/testplan
new file mode 100644
index 00000000..2c0e4e08
--- /dev/null
+++ b/ao-bringup/testplan
@@ -0,0 +1,17 @@
+Low level hardware tests
+
+ * cpu
+ * barometer
+ * accelerometer
+ * flash
+ * gps
+ * igniter continuity
+ * igniters
+ * radio calibration
+ * led
+
+Higher level tests
+
+ * USB serial communication
+ * memory flashing
+ * reading/writing eeprom