61 lines
1.1 KiB
CMake
61 lines
1.1 KiB
CMake
cmake_minimum_required(VERSION 3.13)
|
|
|
|
# Explicitely define board
|
|
set(PICO_BOARD pico_w)
|
|
if(NOT DEFINED PICO_BOARD)
|
|
add_definitions(-DPICO_BOARD=${PICO_BOARD})
|
|
endif()
|
|
|
|
# Include pico-sdk cmake support
|
|
include($ENV{PICO_SDK_PATH}/external/pico_sdk_import.cmake)
|
|
|
|
project(Pico_I2C_Tests C CXX ASM)
|
|
set(CMAKE_C_STANDARD 17)
|
|
set(CMAKE_CXX_STANDARD 17)
|
|
|
|
pico_sdk_init()
|
|
|
|
# Executables and sources
|
|
add_executable(Pico_Master
|
|
src/main_master.c
|
|
)
|
|
|
|
add_executable(Pico_Slave
|
|
src/main_slave.c
|
|
)
|
|
|
|
# Libs
|
|
add_subdirectory(lib/Pico_I2C)
|
|
|
|
target_link_libraries(Pico_Master
|
|
pico_stdlib
|
|
Pico_I2C
|
|
)
|
|
|
|
target_link_libraries(Pico_Slave
|
|
pico_stdlib
|
|
Pico_I2C
|
|
)
|
|
|
|
# Stdio configuration
|
|
pico_enable_stdio_usb(Pico_Master 1)
|
|
pico_enable_stdio_uart(Pico_Master 1)
|
|
|
|
pico_enable_stdio_usb(Pico_Slave 1)
|
|
pico_enable_stdio_uart(Pico_Slave 1)
|
|
|
|
# Output
|
|
pico_add_extra_outputs(Pico_Master)
|
|
pico_add_extra_outputs(Pico_Slave)
|
|
|
|
# Flash target
|
|
add_custom_target(Flash_Master
|
|
DEPENDS Pico_Master
|
|
COMMAND picotool load -f ${PROJECT_BINARY_DIR}/Pico_Master.uf2
|
|
)
|
|
|
|
add_custom_target(Flash_Slave
|
|
DEPENDS Pico_Slave
|
|
COMMAND picotool load -f ${PROJECT_BINARY_DIR}/Pico_Slave.uf2
|
|
)
|