Add LED test
authorKeith Packard <keithp@keithp.com>
Fri, 26 Feb 2010 18:33:13 +0000 (10:33 -0800)
committerKeith Packard <keithp@keithp.com>
Fri, 26 Feb 2010 18:33:13 +0000 (10:33 -0800)
ao-bringup/Makefile
ao-bringup/ao_led_blink.c [new file with mode: 0644]
ao-bringup/testplan [new file with mode: 0644]

index 805b255..cacbc16 100644 (file)
@@ -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 (file)
index 0000000..1e4c143
--- /dev/null
@@ -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 (file)
index 0000000..2c0e4e0
--- /dev/null
@@ -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