summaryrefslogtreecommitdiff
path: root/blink
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2012-05-07 21:39:01 +0000
committerChristian Pointner <equinox@spreadspace.org>2012-05-07 21:39:01 +0000
commitf03b27c4aa04c44628b7de3e7649f8c06b021b8f (patch)
tree214c7d94a97023abf34c12a5961a921e30f96bc5 /blink
parentfixed timing at blink example (diff)
cleaned up blink example
git-svn-id: https://svn.spreadspace.org/avr/trunk@5 aa12f405-d877-488e-9caf-2d797e2a1cc7
Diffstat (limited to 'blink')
-rw-r--r--blink/Makefile2
-rw-r--r--blink/blink.c7
-rw-r--r--blink/led.c55
-rw-r--r--blink/led.h41
4 files changed, 101 insertions, 4 deletions
diff --git a/blink/Makefile b/blink/Makefile
index e863040..bfc222f 100644
--- a/blink/Makefile
+++ b/blink/Makefile
@@ -21,7 +21,7 @@
##
NAME := blink
-OBJ := blink.o
+OBJ := blink.o led.o
BOARD_TYPE := teensy2
include ../include.mk
diff --git a/blink/blink.c b/blink/blink.c
index 267f63e..f4cf9b4 100644
--- a/blink/blink.c
+++ b/blink/blink.c
@@ -5,17 +5,18 @@
#include "avr/io.h"
#include "util/delay.h"
+#include "led.h"
+
#define CPU_PRESCALE(n) (CLKPR = 0x80, CLKPR = (n))
int main(void)
{
CPU_PRESCALE(0);
- PORTE = 0x00;
- DDRE = 0x00;
+ led_init();
for(;;) {
_delay_ms(250);
- PORTE ^= 1<<PORTE6;
+ led_toggle();
}
}
diff --git a/blink/led.c b/blink/led.c
new file mode 100644
index 0000000..5f4cb02
--- /dev/null
+++ b/blink/led.c
@@ -0,0 +1,55 @@
+/*
+ *
+ * mur.sat
+ *
+ * Somewhen in the year 2012, mur.at will have a nano satellite launched
+ * into a low earth orbit (310 km above the surface of our planet). The
+ * satellite itself is a TubeSat personal satellite kit, developed and
+ * launched by interorbital systems. mur.sat is a joint venture of mur.at,
+ * ESC im Labor and realraum.
+ *
+ * Please visit the project hompage at sat.mur.at for further information.
+ *
+ *
+ * Copyright (C) 2011 Christian Pointner <equinox@mur.at>
+ *
+ * This file is part of mur.sat.
+ *
+ * mur.sat 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, either version 3 of the License, or
+ * any later version.
+ *
+ * mur.sat 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 mur.sat. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+#include "avr/io.h"
+
+#include "led.h"
+
+void led_init(void)
+{
+ PORTE = 0x00;
+ DDRE = 0x00;
+}
+
+void led_on(void)
+{
+ PORTE |= 1<<PORTE6;
+}
+
+void led_off(void)
+{
+ PORTE &= ~(1<<PORTE6);
+}
+
+void led_toggle(void)
+{
+ PORTE ^= 1<<PORTE6;
+}
diff --git a/blink/led.h b/blink/led.h
new file mode 100644
index 0000000..3d8eb6c
--- /dev/null
+++ b/blink/led.h
@@ -0,0 +1,41 @@
+/*
+ *
+ * mur.sat
+ *
+ * Somewhen in the year 2012, mur.at will have a nano satellite launched
+ * into a low earth orbit (310 km above the surface of our planet). The
+ * satellite itself is a TubeSat personal satellite kit, developed and
+ * launched by interorbital systems. mur.sat is a joint venture of mur.at,
+ * ESC im Labor and realraum.
+ *
+ * Please visit the project hompage at sat.mur.at for further information.
+ *
+ *
+ * Copyright (C) 2011 Christian Pointner <equinox@mur.at>
+ *
+ * This file is part of mur.sat.
+ *
+ * mur.sat 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, either version 3 of the License, or
+ * any later version.
+ *
+ * mur.sat 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 mur.sat. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+#ifndef MURSAT_led_h_INCLUDED
+#define MURSAT_led_h_INCLUDED
+
+void led_init(void);
+void led_on(void);
+void led_off(void);
+void led_toggle(void);
+
+#endif