From 2e79aafb7081a5305ee875277d26734779ca6d2f Mon Sep 17 00:00:00 2001 From: Perry Hung Date: Fri, 17 Sep 2010 03:49:14 -0400 Subject: Enable USB auto-reset in a hard fault. Redirect thread-mode execution to a fail routine which throbs the LED to indicate a hard fault. Because the fail routine runs in thread mode with interrupts on, USB auto-reset should now work. Test by executing some bogus instruction (e.g. *(volatile int*)0xf34fdaa = 0;) and check that the auto-reset continues to work. --- libmaple/rules.mk | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'libmaple/rules.mk') diff --git a/libmaple/rules.mk b/libmaple/rules.mk index 8428277..cd50495 100644 --- a/libmaple/rules.mk +++ b/libmaple/rules.mk @@ -16,7 +16,6 @@ cSRCS_$(d) := systick.c \ timers.c \ adc.c \ syscalls.c \ - exc.c \ exti.c \ gpio.c \ nvic.c \ @@ -25,8 +24,8 @@ cSRCS_$(d) := systick.c \ rcc.c \ flash.c \ spi.c \ - fsmc.c \ - dac.c \ + fsmc.c \ + dac.c \ usb/usb.c \ usb/usb_callbacks.c \ usb/usb_hardware.c \ @@ -37,12 +36,16 @@ cSRCS_$(d) := systick.c \ usb/usb_lib/usb_mem.c \ usb/usb_lib/usb_regs.c +sSRCS_$(d) := exc.S + cFILES_$(d) := $(cSRCS_$(d):%=$(d)/%) +sFILES_$(d) := $(sSRCS_$(d):%=$(d)/%) -OBJS_$(d) := $(cFILES_$(d):%.c=$(BUILD_PATH)/%.o) +OBJS_$(d) := $(cFILES_$(d):%.c=$(BUILD_PATH)/%.o) $(sFILES_$(d):%.S=$(BUILD_PATH)/%.o) DEPS_$(d) := $(OBJS_$(d):%.o=%.d) $(OBJS_$(d)): TGT_CFLAGS := $(CFLAGS_$(d)) +$(OBJS_$(d)): TGT_ASFLAGS := TGT_BIN += $(OBJS_$(d)) -- cgit v1.2.3