Build firmware

This commit is contained in:
zaubentrucker 2024-12-22 21:39:24 +01:00
parent 2182e9aba7
commit 65ec5beadb
4 changed files with 45 additions and 5 deletions

5
red/mod-io2/justfile Normal file
View file

@ -0,0 +1,5 @@
build:
pio run -v -e genericCH32V003F4P6
flash:
wlink -v flash --enable-sdi-print --watch-serial ./.pio/build/genericCH32V003F4P6/firmware.bin

View file

@ -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

19
red/mod-io2/scratch Normal file
View file

@ -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

View file

@ -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) {
}
}