Commit 8f7167f0 authored by Pellaton Anthony's avatar Pellaton Anthony
Browse files

Add deploy

parent c608ac4e
Loading
Loading
Loading
Loading

firmware/uc/deploy.bat

0 → 100644
+109 −0
Original line number Diff line number Diff line
@echo off

@REM Get current path
for %%i in ("%~dp0.") do SET "currentPath=%%~fi"

SET "CONFIG_FILE=%currentPath%\code\.config"
SET "BUILD_DIR=%currentPath%\code\build"
SET _BUILD=0
SET _FLASH=0

IF NOT EXIST %CONFIG_FILE% (
    @echo BUILD_TYPE=Debug> %CONFIG_FILE%
)

@REM I Made it static change the path if you need. This scripts load all the Pico SDK environnement
CALL "C:\\Program Files\\Raspberry Pi\\Pico SDK v1.5.1\\pico-env.cmd" > nul 2>&1

GOTO :GETOPS

:BUILD
REM Load variables
FOR /F "delims=" %%A IN (%CONFIG_FILE%) DO SET "%%A"

mkdir 
cmake -G Ninja -DCMAKE_BUILD_TYPE=%BUILD_TYPE% -B %BUILD_DIR%/%BUILD_TYPE% -S .
cmake --build %BUILD_DIR%/%BUILD_TYPE%

EXIT /b 0

:FLASH
ECHO ***Flashing***
REM Load variables
FOR /F "delims=" %%A IN (%CONFIG_FILE%) DO SET "%%A"

set "BINARY_DIR=%BUILD_DIR%"
@REM Find executable
FOR /R %BINARY_DIR% %%x in (*.elf) do (
    set PROGRAM=%%x
)

@REM SET PROGRAM=%PROGRAM:\=\\%
SET PROGRAM=%BINARY_DIR%\PI_ContrHorlo.elf
@REM SET PROGRAM=%PROGRAM:\=\\%
SET PROGRAM=%PROGRAM:\=\\%

ECHO Loading executable %PROGRAM%

openocd -f interface/cmsis-dap.cfg -f target/rp2040.cfg -c "adapter speed 5000" -c "program %PROGRAM% verify reset exit"

EXIT /b 0

:GETOPS
SET LAST_OPT=%1

@REM Check args
IF [%LAST_OPT%]==[] GOTO :USAGE
IF [%LAST_OPT%]==[-h] GOTO :USAGE
IF [%LAST_OPT%]==[--help] GOTO :USAGE

@REM Check build
IF [%LAST_OPT%]==[--build] SET LAST_OPT=-b
IF [%LAST_OPT%]==[-b] (
    SET _BUILD=1
)

@REM Check flash
IF [%LAST_OPT%]==[--flash] SET LAST_OPT=-f
IF [%LAST_OPT%]==[-f] (
    SET _FLASH=1
)

@REM Check Type
IF [%LAST_OPT%]==[-t] (
    SHIFT
    IF ["%2"]==["Debug"] (
        @ECHO BUILD_TYPE=Debug> %CONFIG_FILE%
    ) ELSE IF ["%2"]==["Release"] (
        @ECHO BUILD_TYPE=Release> %CONFIG_FILE%
    ) ELSE (
        ECHO Build type can be either Debug or Release
        EXIT 1
    )
)

SHIFT
IF NOT "%1" == "" GOTO GETOPS

IF [%_BUILD%] == [1] (
    CALL :BUILD
)

IF [%_FLASH%] == [1] (
    CALL :FLASH
)

EXIT 0

:USAGE

ECHO: Usage %SCRIPTFILE% [OPTIONS] [PARAMS] ^<args^>
ECHO. 
ECHO OPTIONS:
ECHO.
ECHO    [-b ^| --build] : Build project
ECHO    [-c ^| --clean] : Clean
ECHO    [-f ^| --flash] : Upload application to Raspberry Pi Pico  
ECHO    [-h ^| --help] : Help
ECHO    [-t ^<build type^>] : ^Set build ^type. Debug^|Release 
EXIT 1