# Generated Cmake Pico project file cmake_minimum_required(VERSION 3.13) set(CMAKE_C_STANDARD 11) set(CMAKE_CXX_STANDARD 17) # Initialise pico_sdk from installed location # (note this can come from environment, CMake cache etc) set(PICO_SDK_PATH "/home/amr/workspace/rp2040/pico-sdk") set(CMAKE_EXPORT_COMPILE_COMMANDS ON) set(PICO_BOARD pico2_w CACHE STRING "Board type") #set(PICO_DEFAULT_RP2350_PLATFORM rp2350-riscv) # Pull in Raspberry Pi Pico SDK (must be before project) include(pico_sdk_import.cmake) if (PICO_SDK_VERSION_STRING VERSION_LESS "1.4.0") message(FATAL_ERROR "Raspberry Pi Pico SDK version 1.4.0 (or later) required. Your version is ${PICO_SDK_VERSION_STRING}") endif() # Initialise the Raspberry Pi Pico SDK project(ensaht C CXX ASM) pico_sdk_init() # Add executable. Default name is the project name, version 0.1 add_executable(ensaht src/main.c src/mqtt.c src/bmp.c src/aht.c src/ens.c src/opt4048.c ) # Add the standard include files to the build target_include_directories(ensaht PRIVATE ${CMAKE_CURRENT_LIST_DIR} ${CMAKE_CURRENT_LIST_DIR}/include ${CMAKE_CURRENT_LIST_DIR}/.. # for our common lwipopts or any other standard includes, if required ) # target_compile_options(ensaht PRIVATE -ggdb) pico_set_program_name(ensaht "ensaht") pico_set_program_version(ensaht "0.1") pico_enable_stdio_usb(ensaht 1) pico_enable_stdio_uart(ensaht 0) # Add the standard library to the build target_link_libraries(ensaht hardware_i2c hardware_gpio hardware_divider pico_double pico_cyw43_arch_lwip_threadsafe_background pico_lwip_mqtt pico_lwip_mbedtls pico_mbedtls pico_stdlib) pico_add_extra_outputs(ensaht) add_custom_target(flash COMMAND openocd -f interface/cmsis-dap.cfg -f target/rp2350.cfg -c "adapter speed 10000" -c "program ${CMAKE_CURRENT_BINARY_DIR}/ensaht.elf verify" -c "reset init" -c "exit" DEPENDS ensaht ) add_custom_target(debug COMMAND bash -c "openocd -f interface/cmsis-dap.cfg -f target/rp2350.cfg -c 'adapter speed 10000' & PID=\$\$! ; trap 'kill -9 \$\$PID 2>/dev/null || true' EXIT ; sleep 1 ; arm-none-eabi-gdb -ex 'target extended-remote localhost:3333' ${CMAKE_CURRENT_BINARY_DIR}/ensaht.elf" DEPENDS flash USES_TERMINAL VERBATIM )