# Generated Cmake Pico project file cmake_minimum_required(VERSION 3.13) set(CMAKE_C_STANDARD 11) set(CMAKE_CXX_STANDARD 17) set(CMAKE_EXPORT_COMPILE_COMMANDS ON) # Initialise pico_sdk from installed location # (note this can come from environment, CMake cache etc) # == DO NOT EDIT THE FOLLOWING LINES for the Raspberry Pi Pico VS Code Extension to work == if(WIN32) set(USERHOME $ENV{USERPROFILE}) else() set(USERHOME $ENV{HOME}) endif() set(sdkVersion 2.1.0) set(toolchainVersion 13_3_Rel1) set(picotoolVersion 2.1.0) set(picoVscode ${USERHOME}/.pico-sdk/cmake/pico-vscode.cmake) if (EXISTS ${picoVscode}) include(${picoVscode}) endif() # ==================================================================================== set(PICO_BOARD pico CACHE STRING "Board type") # Pull in Raspberry Pi Pico SDK (must be before project) include(pico_sdk_import.cmake) set(FREERTOS_KERNEL_PATH ${CMAKE_CURRENT_LIST_DIR}/lib/FreeRTOS-Kernel) project(core-xy-firmware C CXX ASM) # Add FreeRTOS include(cmake/FreeRTOS_Kernel_import.cmake) # Initialise the Raspberry Pi Pico SDK pico_sdk_init() # Add executable. Default name is the project name, version 0.1 include(cmake/tmc2209.cmake) add_executable(core-xy-firmware src/main.cpp src/motors.cpp src/corexy/init.cpp src/corexy/tasks.cpp src/corexy/motorFunctions.cpp src/corexy/limitSwitches.cpp src/corexy/position.cpp ) target_include_directories(core-xy-firmware PUBLIC include/ build/ ./ ) pico_set_program_name(core-xy-firmware "core-xy-firmware") pico_set_program_version(core-xy-firmware "0.1") # Generate PIO header pico_generate_pio_header(core-xy-firmware ${CMAKE_CURRENT_LIST_DIR}/src/tmc2209/pulser.pio) # Modify the below lines to enable/disable output over UART/USB pico_enable_stdio_uart(core-xy-firmware 0) pico_enable_stdio_usb(core-xy-firmware 1) # Add any user requested libraries target_link_libraries(core-xy-firmware pico_stdlib pico_time pico_multicore pico_stdio_usb hardware_pio tmc2209_driver FreeRTOS-Kernel-Heap4 ) # Add the standard include files to the build target_include_directories(core-xy-firmware PRIVATE ${CMAKE_CURRENT_LIST_DIR} ) pico_add_extra_outputs(core-xy-firmware)