From ca16d2a6e01fd828177288eaf93eb8b0bbef184e Mon Sep 17 00:00:00 2001 From: Wolfgang Hottgenroth Date: Sat, 10 Oct 2020 22:28:12 +0200 Subject: [PATCH] initial --- openocd.cfg | 4 ++++ readme.md | 5 ++++ tools/insertMyCode.sh | 56 +++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+) create mode 100644 openocd.cfg create mode 100644 readme.md create mode 100644 tools/insertMyCode.sh diff --git a/openocd.cfg b/openocd.cfg new file mode 100644 index 0000000..18f8235 --- /dev/null +++ b/openocd.cfg @@ -0,0 +1,4 @@ +source /usr/share/openocd/scripts/interface/stlink-v2.cfg +source /usr/share/openocd/scripts/target/stm32f1x.cfg +reset_config srst_nogate + diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..43e6698 --- /dev/null +++ b/readme.md @@ -0,0 +1,5 @@ +On Ubuntu install + +* gcc-arm-none-eabi +* openocd + diff --git a/tools/insertMyCode.sh b/tools/insertMyCode.sh new file mode 100644 index 0000000..2503661 --- /dev/null +++ b/tools/insertMyCode.sh @@ -0,0 +1,56 @@ +#!/bin/bash + +MAIN_C=./Core/Src/main.c +MAIN_C_BAK=${MAIN_C}-bak + +MAKEFILE=./Makefile +MAKEFILE_BAK=${MAKEFILE}-bak + + + +PROCESSED="Processed by $0" + +checkFile () { + FILE=$1 + BAK_FILE=$2 + if [ ! -f $FILE ]; then + echo "no $FILE available" + exit 1 + fi + if [ -f $BAK_FILE ]; then + echo "$BAK_FILE already available, delete manually" + exit 1 + fi + grep -q "$PROCESSED" $FILE + if [ "$?" = "0" ]; then + echo "$FILE has already been processed" + exit 1 + fi +} + + +checkFile $MAIN_C $MAIN_C_BAK +checkFile $MAKEFILE $MAKEFILE_BAK + + +cp $MAIN_C $MAIN_C_BAK +echo "// $PROCESSED" > $MAIN_C +cat $MAIN_C_BAK | \ + sed -e 's,\(/\* USER CODE BEGIN Includes \*/\),\1\n#include "main2.h"\n,' | \ + sed -e 's,\(/\* USER CODE BEGIN 1 \*/\),\1\n my_setup_1();\n,' | \ + sed -e 's,\(/\* USER CODE BEGIN 2 \*/\),\1\n my_setup_2();\n,' | \ + sed -e 's,\(/\* USER CODE BEGIN 3 \*/\),\1\n my_loop();\n,' | \ + sed -e 's,\(/\* USER CODE BEGIN Error_Handler_Debug \*/\),\1\n my_errorHandler();\n,' | \ + sed -e 's,\(/\* USER CODE END Error_Handler_Debug \*/\),\1\n while(1) { };\n,' >> $MAIN_C + + +SRC_EXT='' +for I in User/Src/*.c; do + SRC_EXT+="$I " +done + +cp $MAKEFILE $MAKEFILE_BAK +echo "# $PROCESSED" > $MAKEFILE +cat $MAKEFILE_BAK | \ + sed -e 's,\(C_SOURCES = \\\),\1\n'"$SRC_EXT"' \\,' | \ + sed -e 's,\(C_INCLUDES = \\\),\1\n-IUser/Inc \\,' >> $MAKEFILE