summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2017-07-09 02:54:38 +0200
committerChristian Pointner <equinox@spreadspace.org>2017-07-09 02:54:38 +0200
commitfd6e1151953486706c4e67a36d9e7e81a6f7d95c (patch)
treefdd2d913fb1b20479c48afbbdffb9e97329b9c92
parentusbio check if connected (diff)
added digispark boards
-rw-r--r--.gitignore2
-rw-r--r--blink/Makefile2
-rw-r--r--contrib/Makefile9
-rw-r--r--defines.mk7
-rw-r--r--include.mk11
-rw-r--r--lib/led.c8
6 files changed, 36 insertions, 3 deletions
diff --git a/.gitignore b/.gitignore
index 5a73a83..b65385f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -12,4 +12,6 @@ contrib/PJON-*
contrib/BMP180-*
contrib/.teensy-loader.prepared
contrib/teensy_loader_cli
+contrib/.micronucleus.prepared
+contrib/micronucleus
tuer-rfid/update-keys
diff --git a/blink/Makefile b/blink/Makefile
index 341c263..c3b4e79 100644
--- a/blink/Makefile
+++ b/blink/Makefile
@@ -23,7 +23,7 @@
NAME := blink
OBJ := $(NAME).o
LIBS := util led
-BOARD_TYPE := culV3
+BOARD_TYPE := digispark
SPREADAVR_PATH := ..
include $(SPREADAVR_PATH)/include.mk
diff --git a/contrib/Makefile b/contrib/Makefile
index 3308183..ac5fa22 100644
--- a/contrib/Makefile
+++ b/contrib/Makefile
@@ -26,7 +26,7 @@ LUFA_VERSION := 151115
FASTLED_VERSION := 3.1.0
PJON_VERSION := 3.0
-all: download-lufa download-fastled download-pjon update-teensy-loader
+all: download-lufa download-fastled download-pjon update-teensy-loader update-micronucleus
download-lufa: LUFA-${LUFA_VERSION}.zip
@@ -54,3 +54,10 @@ PJON-${PJON_VERSION}.zip:
update-teensy-loader: .teensy-loader.prepared
cd teensy_loader_cli; git pull; make
+
+.micronucleus.prepared:
+ git clone https://github.com/micronucleus/micronucleus/
+ touch $@
+
+update-micronucleus: .micronucleus.prepared
+ cd micronucleus/commandline; git pull; make
diff --git a/defines.mk b/defines.mk
index be0703e..6c3f54a 100644
--- a/defines.mk
+++ b/defines.mk
@@ -224,6 +224,12 @@ ifeq ($(BOARD_TYPE),AvrNetIo)
PROG_TYPE := stk500v2
AVRDUDE_PORT := /dev/ttyS0
endif
+ifeq ($(BOARD_TYPE),digispark)
+ MCU := attiny85
+ ARCH = AVR8
+ F_CPU := 16500000
+ PROG := micronucleus
+endif
CC = avr-gcc
CXX = avr-g++
@@ -235,6 +241,7 @@ LIB_DIR = $(SPREADAVR_PATH)/lib
DFU = dfu-programmer
teensy = $(SPREADAVR_PATH)/contrib/teensy_loader_cli/teensy_loader_cli
+micronucleus = $(SPREADAVR_PATH)/contrib/micronucleus/commandline/micronucleus
avrdude = avrdude
## Options common to C and C++ compiler
diff --git a/include.mk b/include.mk
index 7e0758a..11341e6 100644
--- a/include.mk
+++ b/include.mk
@@ -243,6 +243,17 @@ endef
define avrdude/run
endef
+### micronucleus
+define micronucleus/erase
+endef
+
+define micronucleus/flash
+ $(micronucleus) --run $1
+endef
+
+define micronucleus/run
+endef
+
### Program Targets
program: reset erase flash run
diff --git a/lib/led.c b/lib/led.c
index d6e57d0..1ba512b 100644
--- a/lib/led.c
+++ b/lib/led.c
@@ -32,7 +32,7 @@
defined(__BOARD_arduino10000__) || defined(__BOARD_arduinoUno__) || \
defined(__BOARD_hhd70dongle__) || defined(__BOARD_rda1846dongle__) || defined(__BOARD_culV3__) || \
defined(__BOARD_slowpandongle1__) || defined(__BOARD_slowpandongle2__) || defined(__BOARD_teenstep__) || \
- defined(__BOARD_rhmixxx__)
+ defined(__BOARD_rhmixxx__) || defined(__BOARD_digispark__)
#define NUM_LEDS 1
#else
#define NUM_LEDS 0
@@ -97,6 +97,12 @@
#define LED_PINNUM 0
#endif
+#if defined(__BOARD_digispark__)
+#define LED_PORT PORTB
+#define LED_DDR DDRB
+#define LED_PINNUM 1
+#endif
+
void led_init(void)
{
#if NUM_LEDS >= 1