aboutsummaryrefslogtreecommitdiff
path: root/tests/BlinkInAVRC
diff options
context:
space:
mode:
authorSudar <sudar@sudarmuthu.com>2014-09-10 11:00:34 +0530
committerSudar <sudar@sudarmuthu.com>2014-09-10 11:00:34 +0530
commitfe00b04a0e1a58f63ae134081d2d896f27ac3f2d (patch)
tree632698c837a0828541dde6acb72fd10f6cb1b7ec /tests/BlinkInAVRC
parente30bb5c28a42152007d70325477f364605b73f34 (diff)
parent48356f96ce05948a046d0732dedda66b3e0b69c8 (diff)
Merge pull request #254 from peplin/test-suite-and-ci
Add an automated test runner for example programs and Travis CI integration
Diffstat (limited to 'tests/BlinkInAVRC')
-rw-r--r--tests/BlinkInAVRC/Makefile17
-rw-r--r--tests/BlinkInAVRC/blink.c38
2 files changed, 55 insertions, 0 deletions
diff --git a/tests/BlinkInAVRC/Makefile b/tests/BlinkInAVRC/Makefile
new file mode 100644
index 0000000..9080b24
--- /dev/null
+++ b/tests/BlinkInAVRC/Makefile
@@ -0,0 +1,17 @@
+# This sample Makefile, explains how you can compile plain AVR C file.
+#
+# Arduino Make file. Refer to https://github.com/sudar/Arduino-Makefile
+
+NO_CORE = Yes
+
+BOARD_TAG = atmega16
+MCU = atmega16
+F_CPU = 8000000L
+
+ISP_PROG = stk500v1
+AVRDUDE_ISP_BAUDRATE = 19200
+
+include ../TestSuiteCommon.mk
+include $(ARDMK_DIR)/Arduino.mk
+
+# !!! Important. You have to use make ispload to upload when using ISP programmer
diff --git a/tests/BlinkInAVRC/blink.c b/tests/BlinkInAVRC/blink.c
new file mode 100644
index 0000000..d8b7c8f
--- /dev/null
+++ b/tests/BlinkInAVRC/blink.c
@@ -0,0 +1,38 @@
+/*
+ * © Anil Kumar Pugalia, 2010. Email: email@sarika-pugs.com
+ *
+ * ATmega48/88/168, ATmega16/32
+ *
+ * Example Blink. Toggles all IO pins at 1Hz
+ */
+
+#include <avr/io.h>
+#include <util/delay.h>
+
+void init_io(void)
+{
+ // 1 = output, 0 = input
+ DDRB = 0b11111111; // All outputs
+ DDRC = 0b11111111; // All outputs
+ DDRD = 0b11111110; // PORTD (RX on PD0). Just for demo
+}
+
+int main(void)
+{
+ init_io();
+
+ while (1)
+ {
+ PORTC = 0xFF;
+ PORTB = 0xFF;
+ PORTD = 0xFF;
+ _delay_ms(500);
+
+ PORTC = 0x00;
+ PORTB = 0x00;
+ PORTD = 0x00;
+ _delay_ms(500);
+ }
+
+ return 0;
+}