diff options
Diffstat (limited to 'software/hhd70dongle')
-rw-r--r-- | software/hhd70dongle/Makefile | 12 | ||||
-rw-r--r-- | software/hhd70dongle/led.c | 67 | ||||
-rw-r--r-- | software/hhd70dongle/led.h | 28 |
3 files changed, 55 insertions, 52 deletions
diff --git a/software/hhd70dongle/Makefile b/software/hhd70dongle/Makefile index c12e4c6..87ffb8e 100644 --- a/software/hhd70dongle/Makefile +++ b/software/hhd70dongle/Makefile @@ -22,15 +22,7 @@ NAME := hhd70dongle OBJ := hhd70dongle.o led.o spi.o usb_rawhid.o c1101lib.o util.o -BOARD_TYPE := teensy2 +BOARD_TYPE := hhd70dongle -include ../teensy.include.mk +include ../avr.include.mk CFLAGS += -std=gnu99 - -DFU_PRO_TARGET := atmega32u4 - -.phony: flash -flash: $(NAME).hex - sudo dfu-programmer $(DFU_PRO_TARGET) erase - sudo dfu-programmer $(DFU_PRO_TARGET) flash $< - sudo dfu-programmer $(DFU_PRO_TARGET) start diff --git a/software/hhd70dongle/led.c b/software/hhd70dongle/led.c index d24af16..ced853f 100644 --- a/software/hhd70dongle/led.c +++ b/software/hhd70dongle/led.c @@ -1,55 +1,76 @@ /* + * spreadspace avr utils * - * 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. + * Copyright (C) 2012 Christian Pointner <equinox@spreadspace.org> + * + * This file is part of spreadspace avr utils. * - * 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 + * spreadspace avr utils 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, + * spreadspace avr utils 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/>. - * + * along with spreadspace avr utils. If not, see <http://www.gnu.org/licenses/>. */ -#include "avr/io.h" +#include "avr/io.h" #include "led.h" +#define LED_DIR 1 +#if defined(__BOARD_teensy1__) || defined(__BOARD_teensy1pp__) +#define LED_DIR 0 +#endif + +#if defined(__BOARD_teensy2__) || defined(__BOARD_teensy2pp__) || defined(__BOARD_teensy2__) || defined(__BOARD_teensy2pp__) +#define LED_PORT PORTD +#define LED_DDR DDRD +#define LED_PINNUM 6 +#endif + +#if defined(__BOARD_hhd70dongle__) +#define LED_PORT PORTE +#define LED_DDR DDRE +#define LED_PINNUM 6 +#endif + +#if defined(__BOARD_arduino2009__) +#define LED_PORT PORTB +#define LED_DDR DDRB +#define LED_PINNUM 5 +#endif + void led_init(void) { - PORTE = 0x00; - DDRE = 1<<PORTE6; + led_off(); + LED_DDR = 1<<LED_PINNUM; } void led_on(void) { - PORTE |= 1<<PORTE6; +#if LED_DIR == 1 + LED_PORT |= 1<<LED_PINNUM; +#else + LED_PORT &= ~(1<<LED_PINNUM); +#endif } void led_off(void) { - PORTE &= ~(1<<PORTE6); +#if LED_DIR == 1 + LED_PORT &= ~(1<<LED_PINNUM); +#else + LED_PORT |= 1<<LED_PINNUM; +#endif } void led_toggle(void) { - PORTE ^= 1<<PORTE6; + LED_PORT ^= 1<<LED_PINNUM; } diff --git a/software/hhd70dongle/led.h b/software/hhd70dongle/led.h index 3d8eb6c..0375828 100644 --- a/software/hhd70dongle/led.h +++ b/software/hhd70dongle/led.h @@ -1,37 +1,27 @@ /* + * spreadspace avr utils * - * 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. + * Copyright (C) 2012 Christian Pointner <equinox@spreadspace.org> + * + * This file is part of spreadspace avr utils. * - * 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 + * spreadspace avr utils 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, + * spreadspace avr utils 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/>. - * + * along with spreadspace avr utils. If not, see <http://www.gnu.org/licenses/>. */ -#ifndef MURSAT_led_h_INCLUDED -#define MURSAT_led_h_INCLUDED +#ifndef SPREADSPACE_led_h_INCLUDED +#define SPREADSPACE_led_h_INCLUDED void led_init(void); void led_on(void); |