From 65ec5beadb2f3080e7ee00971715d2621ce643fb Mon Sep 17 00:00:00 2001 From: zaubentrucker <frederik.menke@rwth-aachen.de> Date: Sun, 22 Dec 2024 21:39:24 +0100 Subject: [PATCH] Build firmware --- red/mod-io2/justfile | 5 +++++ red/mod-io2/platformio.ini | 8 ++++++-- red/mod-io2/scratch | 19 +++++++++++++++++++ red/mod-io2/src/main.cpp | 18 +++++++++++++++--- 4 files changed, 45 insertions(+), 5 deletions(-) create mode 100644 red/mod-io2/justfile create mode 100644 red/mod-io2/scratch diff --git a/red/mod-io2/justfile b/red/mod-io2/justfile new file mode 100644 index 0000000..0afd259 --- /dev/null +++ b/red/mod-io2/justfile @@ -0,0 +1,5 @@ +build: + pio run -v -e genericCH32V003F4P6 + +flash: + wlink -v flash --enable-sdi-print --watch-serial ./.pio/build/genericCH32V003F4P6/firmware.bin diff --git a/red/mod-io2/platformio.ini b/red/mod-io2/platformio.ini index f9ca9f4..7df80b5 100644 --- a/red/mod-io2/platformio.ini +++ b/red/mod-io2/platformio.ini @@ -10,7 +10,11 @@ [env:genericCH32V003F4P6] platform = ch32v -board = genericCH32V003F4P6 +board = ch32v003f4p6_evt_r0 framework = noneos-sdk -build_flags = -D SYSCLK_FREQ_48MHZ_HSI #-D LOD_DEBUG_ENABLE +# build_flags = -D SYSCLK_FREQ_48MHZ_HSI -D LOD_DEBUG_ENABLE -DCH32V003F4 -DCH32V00X -DCH32V00x -DCH32V003 monitor_speed = 115200 + +[env:ch32v003f4p6_evt_r0] +board = ch32v003f4p6_evt_r0 + diff --git a/red/mod-io2/scratch b/red/mod-io2/scratch new file mode 100644 index 0000000..a55b8d3 --- /dev/null +++ b/red/mod-io2/scratch @@ -0,0 +1,19 @@ +# Example: + + +riscv-none-embed-g++ -o .pio/build/ch32v003f4p6_evt_r0/src/main.o -c -std=gnu++17 -fno-threadsafe-statics -fno-rtti -fno-exceptions -fno-use-cxa-atexit -Os -g -Wall -msmall-data-limit=0 -msave-restore -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized -Wno-comment -march=rv32ecxw -mabi=ilp32e -DPLATFORMIO=60116 -DCH32V003F4 -DCH32V00X -DCH32V00x -DCH32V003 -D__PIO_CPP_SUPPORT__ -Iinclude -Isrc -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Core/ch32v00x -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Peripheral/ch32v00x/inc -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Peripheral/ch32v00x/src -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Startup -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/System/ch32v00x -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Debug/ch32v00x src/main.cpp + + + +# My code: + +riscv-none-embed-g++ -o .pio/build/genericCH32V003F4P6/src/main.o -c -std=gnu++17 -fno-threadsafe-statics -fno-rtti -fno-exceptions -fno-use-cxa-atexit -Os -g -Wall -msmall-data-limit=0 -msave-restore -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections -fno-common -Wunused -Wuninitialized -Wno-comment -march=rv32ecxw -mabi=ilp32e -DPLATFORMIO=60116 -DCH32V003F4 -DCH32V00X -DCH32V00x -DCH32V003 -D__PIO_CPP_SUPPORT__ -Iinclude -Isrc -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Core/ch32v00x -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Peripheral/ch32v00x/inc -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Peripheral/ch32v00x/src -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Startup -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/System/ch32v00x -I/home/zaubentrucker/.platformio/packages/framework-wch-noneos-sdk/Debug/ch32v00x src/main.cpp +src/main.cpp: In function 'int main()': +src/main.cpp:18:27: error: 'NVIC_PriorityGroup_2' was not declared in this scope + NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); + ^~~~~~~~~~~~~~~~~~~~ +src/main.cpp:18:27: note: suggested alternative: 'NVIC_PriorityGroup_1' + NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); + ^~~~~~~~~~~~~~~~~~~~ + NVIC_PriorityGroup_1 +riscv-none-embed-gcc-ar rc .pio/build/genericCH32V003F4P6/libFrameworkNoneOSVariant.a .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_adc.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_dbgmcu.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_dma.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_exti.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_flash.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_gpio.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_i2c.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_iwdg.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_misc.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_opa.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_pwr.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_rcc.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_spi.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_tim.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_usart.o .pio/build/genericCH32V003F4P6/FrameworkNoneOSVariant/ch32v00x_wwdg.o diff --git a/red/mod-io2/src/main.cpp b/red/mod-io2/src/main.cpp index f8d4a48..f79f395 100644 --- a/red/mod-io2/src/main.cpp +++ b/red/mod-io2/src/main.cpp @@ -1,4 +1,15 @@ -#include <ch32v00x.h> +#if defined(CH32V00X) +#include <ch32v00x.h> +#elif defined(CH32V10X) +#include <ch32v10x.h> +#elif defined(CH32V20X) +#include <ch32v20x.h> +#elif defined(CH32V30X) || defined(CH32V31X) +#include <ch32v30x.h> +#elif defined(CH32L10X) +#include <ch32l103.h> +#endif +#include <debug.h> #include "log_debug.h" #include "uptime.h" @@ -15,7 +26,7 @@ extern "C" { #endif int main(void) { - NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); + NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); SystemCoreClockUpdate(); // Disable GPIO Alternate Functions and extrnal oscilator @@ -29,7 +40,8 @@ int main(void) { LOG_DEBUG(EOL "Sys Clock: %ld" EOL, SystemCoreClock); MOD_IO2::Setup(); - while (1) { + while (1) { + } }