summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxengineering <me@xengineering.eu>2021-09-17 19:40:26 +0200
committerxengineering <me@xengineering.eu>2021-09-17 19:42:19 +0200
commit32a7f5fa5be057c5baf6f654f5f2ee95f46da143 (patch)
tree2b8c63f027ebf73e1a2987a92612e3b3e388bd9b
parentc0f4fe33a0fb7ac7a01e34258f6017d658896664 (diff)
downloadledcontrol-32a7f5fa5be057c5baf6f654f5f2ee95f46da143.tar
ledcontrol-32a7f5fa5be057c5baf6f654f5f2ee95f46da143.tar.zst
ledcontrol-32a7f5fa5be057c5baf6f654f5f2ee95f46da143.zip
Cleanup Project for Rewrite
-rw-r--r--.gitignore4
-rw-r--r--.gitmodules3
-rw-r--r--README.md2
-rw-r--r--ledcontrol/Makefile20
-rw-r--r--ledcontrol/main.c47
m---------libopencm30
-rw-r--r--rules.mk177
-rwxr-xr-xserial_flasher.sh5
8 files changed, 1 insertions, 257 deletions
diff --git a/.gitignore b/.gitignore
deleted file mode 100644
index 01acaa5..0000000
--- a/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-bin/
-*.elf
-*.bin
-generated.*.ld
diff --git a/.gitmodules b/.gitmodules
deleted file mode 100644
index 6bccd68..0000000
--- a/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "libopencm3"]
- path = libopencm3
- url = https://github.com/libopencm3/libopencm3
diff --git a/README.md b/README.md
index 4a81a0c..dad276d 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
# ledcontrol
-A firmware project for the STM32F103C8T6 to control WS2812 LED strips.
+A firmware project for the STM32F103C8T6 to control LED strips.
diff --git a/ledcontrol/Makefile b/ledcontrol/Makefile
deleted file mode 100644
index 9589a3a..0000000
--- a/ledcontrol/Makefile
+++ /dev/null
@@ -1,20 +0,0 @@
-PROJECT = ledcontrol
-BUILD_DIR = bin
-
-SHARED_DIR = ../lib
-CFILES = main.c
-# CFILES += api.c
-# AFILES += api-asm.S
-
-# TODO - you will need to edit these two lines!
-DEVICE=stm32f103c8
-# OOCD_FILE = board/stm32f4discovery.cfg
-
-# You shouldn't have to edit anything below here.
-VPATH += $(SHARED_DIR)
-INCLUDES += $(patsubst %,-I%, . $(SHARED_DIR))
-OPENCM3_DIR=../libopencm3
-
-include $(OPENCM3_DIR)/mk/genlink-config.mk
-include ../rules.mk
-include $(OPENCM3_DIR)/mk/genlink-rules.mk
diff --git a/ledcontrol/main.c b/ledcontrol/main.c
deleted file mode 100644
index 9dc54e2..0000000
--- a/ledcontrol/main.c
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-#include <libopencm3/stm32/rcc.h>
-#include <libopencm3/stm32/gpio.h>
-
-#define DELAY 1000000
-
-
-void clock_init(void);
-void gpio_init(void);
-void delay(void);
-
-
-int main(void)
-{
- clock_init();
- gpio_init();
-
- while(1){
- gpio_toggle(GPIOC, GPIO13);
- delay();
- }
-
- return 0;
-}
-
-
-void clock_init(void)
-{
- rcc_periph_clock_enable(RCC_GPIOC); // for PC13 blinking
-}
-
-
-void gpio_init(void)
-{
- gpio_set_mode(GPIOC, GPIO_MODE_OUTPUT_50_MHZ, GPIO_CNF_OUTPUT_PUSHPULL, GPIO13);
- gpio_set(GPIOC, GPIO13);
-}
-
-
-void delay(void)
-{
- for (int i = 0; i < DELAY; i++) {
- __asm__("nop");
- }
-}
-
diff --git a/libopencm3 b/libopencm3
deleted file mode 160000
-Subproject cb0661f81de5b1cae52ca99c7b5985b678176db
diff --git a/rules.mk b/rules.mk
deleted file mode 100644
index e417d2f..0000000
--- a/rules.mk
+++ /dev/null
@@ -1,177 +0,0 @@
-# This version of rules.mk expects the following to be defined before
-# inclusion..
-### REQUIRED ###
-# OPENCM3_DIR - duh
-# PROJECT - will be the basename of the output elf, eg usb-gadget0-stm32f4disco
-# CFILES - basenames only, eg main.c blah.c
-# CXXFILES - same for C++ files. Must have cxx suffix!
-# DEVICE - the full device name, eg stm32f405ret6
-# _or_
-# LDSCRIPT - full path, eg ../../examples/stm32/f4/stm32f4-discovery/stm32f4-discovery.ld
-# OPENCM3_LIB - the basename, eg: opencm3_stm32f4
-# OPENCM3_DEFS - the target define eg: -DSTM32F4
-# ARCH_FLAGS - eg, -mthumb -mcpu=cortex-m4 -mfloat-abi=hard -mfpu=fpv4-sp-d16
-# (ie, the full set of cpu arch flags, _none_ are defined in this file)
-#
-### OPTIONAL ###
-# INCLUDES - fully formed -I paths, if you want extra, eg -I../shared
-# BUILD_DIR - defaults to bin, should set this if you are building multiarch
-# OPT - full -O flag, defaults to -Os
-# CSTD - defaults -std=c99
-# CXXSTD - no default.
-# OOCD_INTERFACE - eg stlink-v2
-# OOCD_TARGET - eg stm32f4x
-# both only used if you use the "make flash" target.
-# OOCD_FILE - eg my.openocd.cfg
-# This overrides interface/target above, and is used as just -f FILE
-### TODO/FIXME/notes ###
-# No support for stylecheck.
-# No support for BMP/texane/random flash methods, no plans either
-# No support for magically finding the library.
-# C++ hasn't been actually tested with this..... sorry bout that. ;)
-# Second expansion/secondary not set, add this if you need them.
-
-BUILD_DIR ?= bin
-OPT ?= -Os
-CSTD ?= -std=c99
-
-# Be silent per default, but 'make V=1' will show all compiler calls.
-# If you're insane, V=99 will print out all sorts of things.
-V?=0
-ifeq ($(V),0)
-Q := @
-NULL := 2>/dev/null
-endif
-
-# Tool paths.
-PREFIX ?= arm-none-eabi-
-CC = $(PREFIX)gcc
-CXX = $(PREFIX)g++
-LD = $(PREFIX)gcc
-OBJCOPY = $(PREFIX)objcopy
-OBJDUMP = $(PREFIX)objdump
-OOCD ?= openocd
-
-OPENCM3_INC = $(OPENCM3_DIR)/include
-
-# Inclusion of library header files
-INCLUDES += $(patsubst %,-I%, . $(OPENCM3_INC) )
-
-OBJS = $(CFILES:%.c=$(BUILD_DIR)/%.o)
-OBJS += $(CXXFILES:%.cxx=$(BUILD_DIR)/%.o)
-OBJS += $(AFILES:%.S=$(BUILD_DIR)/%.o)
-GENERATED_BINS = $(PROJECT).elf $(PROJECT).bin $(PROJECT).map $(PROJECT).list $(PROJECT).lss
-
-TGT_CPPFLAGS += -MD
-TGT_CPPFLAGS += -Wall -Wundef $(INCLUDES)
-TGT_CPPFLAGS += $(INCLUDES) $(OPENCM3_DEFS)
-
-TGT_CFLAGS += $(OPT) $(CSTD) -ggdb3
-TGT_CFLAGS += $(ARCH_FLAGS)
-TGT_CFLAGS += -fno-common
-TGT_CFLAGS += -ffunction-sections -fdata-sections
-TGT_CFLAGS += -Wextra -Wshadow -Wno-unused-variable -Wimplicit-function-declaration
-TGT_CFLAGS += -Wredundant-decls -Wstrict-prototypes -Wmissing-prototypes
-
-TGT_CXXFLAGS += $(OPT) $(CXXSTD) -ggdb3
-TGT_CXXFLAGS += $(ARCH_FLAGS)
-TGT_CXXFLAGS += -fno-common
-TGT_CXXFLAGS += -ffunction-sections -fdata-sections
-TGT_CXXFLAGS += -Wextra -Wshadow -Wredundant-decls -Weffc++
-
-TGT_ASFLAGS += $(OPT) $(ARCH_FLAGS) -ggdb3
-
-TGT_LDFLAGS += -T$(LDSCRIPT) -L$(OPENCM3_DIR)/lib -nostartfiles
-TGT_LDFLAGS += $(ARCH_FLAGS)
-TGT_LDFLAGS += -specs=nano.specs
-TGT_LDFLAGS += -Wl,--gc-sections
-# OPTIONAL
-#TGT_LDFLAGS += -Wl,-Map=$(PROJECT).map
-ifeq ($(V),99)
-TGT_LDFLAGS += -Wl,--print-gc-sections
-endif
-
-# Linker script generator fills this in for us.
-ifeq (,$(DEVICE))
-LDLIBS += -l$(OPENCM3_LIB)
-endif
-# nosys is only in newer gcc-arm-embedded...
-#LDLIBS += -specs=nosys.specs
-LDLIBS += -Wl,--start-group -lc -lgcc -lnosys -Wl,--end-group
-
-# Burn in legacy hell fortran modula pascal yacc idontevenwat
-.SUFFIXES:
-.SUFFIXES: .c .S .h .o .cxx .elf .bin .list .lss
-
-# Bad make, never *ever* try to get a file out of source control by yourself.
-%: %,v
-%: RCS/%,v
-%: RCS/%
-%: s.%
-%: SCCS/s.%
-
-all: $(PROJECT).elf $(PROJECT).bin
-flash: $(PROJECT).flash
-
-# error if not using linker script generator
-ifeq (,$(DEVICE))
-$(LDSCRIPT):
-ifeq (,$(wildcard $(LDSCRIPT)))
- $(error Unable to find specified linker script: $(LDSCRIPT))
-endif
-else
-# if linker script generator was used, make sure it's cleaned.
-GENERATED_BINS += $(LDSCRIPT)
-endif
-
-# Need a special rule to have a bin dir
-$(BUILD_DIR)/%.o: %.c
- @printf " CC\t$<\n"
- @mkdir -p $(dir $@)
- $(Q)$(CC) $(TGT_CFLAGS) $(CFLAGS) $(TGT_CPPFLAGS) $(CPPFLAGS) -o $@ -c $<
-
-$(BUILD_DIR)/%.o: %.cxx
- @printf " CXX\t$<\n"
- @mkdir -p $(dir $@)
- $(Q)$(CXX) $(TGT_CXXFLAGS) $(CXXFLAGS) $(TGT_CPPFLAGS) $(CPPFLAGS) -o $@ -c $<
-
-$(BUILD_DIR)/%.o: %.S
- @printf " AS\t$<\n"
- @mkdir -p $(dir $@)
- $(Q)$(CC) $(TGT_ASFLAGS) $(ASFLAGS) $(TGT_CPPFLAGS) $(CPPFLAGS) -o $@ -c $<
-
-$(PROJECT).elf: $(OBJS) $(LDSCRIPT) $(LIBDEPS)
- @printf " LD\t$@\n"
- $(Q)$(LD) $(TGT_LDFLAGS) $(LDFLAGS) $(OBJS) $(LDLIBS) -o $@
-
-%.bin: %.elf
- @printf " OBJCOPY\t$@\n"
- $(Q)$(OBJCOPY) -O binary $< $@
-
-%.lss: %.elf
- $(OBJDUMP) -h -S $< > $@
-
-%.list: %.elf
- $(OBJDUMP) -S $< > $@
-
-%.flash: %.elf
- @printf " FLASH\t$<\n"
-ifeq (,$(OOCD_FILE))
- $(Q)(echo "halt; program $(realpath $(*).elf) verify reset" | nc -4 localhost 4444 2>/dev/null) || \
- $(OOCD) -f interface/$(OOCD_INTERFACE).cfg \
- -f target/$(OOCD_TARGET).cfg \
- -c "program $(realpath $(*).elf) verify reset exit" \
- $(NULL)
-else
- $(Q)(echo "halt; program $(realpath $(*).elf) verify reset" | nc -4 localhost 4444 2>/dev/null) || \
- $(OOCD) -f $(OOCD_FILE) \
- -c "program $(realpath $(*).elf) verify reset exit" \
- $(NULL)
-endif
-
-clean:
- rm -rf $(BUILD_DIR) $(GENERATED_BINS)
-
-.PHONY: all clean flash
--include $(OBJS:.o=.d)
-
diff --git a/serial_flasher.sh b/serial_flasher.sh
deleted file mode 100755
index 0c80a0b..0000000
--- a/serial_flasher.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-#!/bin/bash
-
-
-stm32loader -p /dev/ttyUSB0 -e -w -v ledcontrol/ledcontrol.bin
-