diff options
Diffstat (limited to 'lib/pbdrv/drv/arduino')
-rw-r--r-- | lib/pbdrv/drv/arduino/cfg.cmake | 3 | ||||
-rw-r--r-- | lib/pbdrv/drv/arduino/include.cmake | 12 |
2 files changed, 15 insertions, 0 deletions
diff --git a/lib/pbdrv/drv/arduino/cfg.cmake b/lib/pbdrv/drv/arduino/cfg.cmake index 36716e3..47f54a4 100644 --- a/lib/pbdrv/drv/arduino/cfg.cmake +++ b/lib/pbdrv/drv/arduino/cfg.cmake @@ -5,3 +5,6 @@ endif() target_sources(pbdrv-mod PRIVATE "${CMAKE_CURRENT_LIST_DIR}/mod.cpp") target_link_arduino_libraries(pbdrv-mod core Wire) +# arduino must use freertos +include("${CMAKE_CURRENT_LIST_DIR}/../../ext/freertos/include.cmake") + diff --git a/lib/pbdrv/drv/arduino/include.cmake b/lib/pbdrv/drv/arduino/include.cmake new file mode 100644 index 0000000..50f56d6 --- /dev/null +++ b/lib/pbdrv/drv/arduino/include.cmake @@ -0,0 +1,12 @@ +if(NOT DEFINED ARDUINO) + return() +endif() + +target_compile_definitions(pbdrv-mod PRIVATE PB_TARGET_FREERTOS) +target_sources(pbdrv-mod PRIVATE "${CMAKE_CURRENT_LIST_DIR}/mod.cpp") +target_link_arduino_libraries(pbdrv-mod core Wire) + +# freertos is used to defer the handling of i2c messages outside the receive +# interrupt service routine +include("${CMAKE_CURRENT_LIST_DIR}/../../ext/freertos/include.cmake") + |