Compile error if CONFIG_FREERTOS_HZ != 1000 (#6955)
* Compile error if CONFIG_FREERTOS_HZ != 1000 * add a check at the CMake level, per feedback * Set CONFIG_FREERTOS_HZ=1000 in CI test of Arduino-as-component
This commit is contained in:
parent
d22bcb765b
commit
adb01cf0c6
3 changed files with 8 additions and 2 deletions
1
.github/workflows/push.yml
vendored
1
.github/workflows/push.yml
vendored
|
|
@ -104,4 +104,5 @@ jobs:
|
|||
run: |
|
||||
. ${IDF_PATH}/export.sh
|
||||
idf.py create-project test
|
||||
echo CONFIG_FREERTOS_HZ=1000 > test/sdkconfig.defaults
|
||||
idf.py -C test -DEXTRA_COMPONENT_DIRS=$PWD/components build
|
||||
|
|
|
|||
|
|
@ -210,6 +210,12 @@ set(priv_requires fatfs nvs_flash app_update spiffs bootloader_support openssl b
|
|||
|
||||
idf_component_register(INCLUDE_DIRS ${includedirs} PRIV_INCLUDE_DIRS ${priv_includes} SRCS ${srcs} REQUIRES ${requires} PRIV_REQUIRES ${priv_requires})
|
||||
|
||||
if(NOT CONFIG_FREERTOS_HZ EQUAL 1000 AND NOT "$ENV{ARDUINO_SKIP_TICK_CHECK}")
|
||||
# See delay() in cores/esp32/esp32-hal-misc.c.
|
||||
message(FATAL_ERROR "esp32-arduino requires CONFIG_FREERTOS_HZ=1000 "
|
||||
"(currently ${CONFIG_FREERTOS_HZ})")
|
||||
endif()
|
||||
|
||||
string(TOUPPER ${CONFIG_ARDUINO_VARIANT} idf_target_caps)
|
||||
target_compile_options(${COMPONENT_TARGET} PUBLIC
|
||||
-DARDUINO=10812
|
||||
|
|
|
|||
|
|
@ -140,8 +140,7 @@ If you are writing code that does not require Arduino to compile and you want yo
|
|||
FreeRTOS Tick Rate (Hz)
|
||||
-----------------------
|
||||
|
||||
You might notice that Arduino-esp32's `delay()` function will only work in multiples of 10ms. That is because, by default, esp-idf handles task events 100 times per second.
|
||||
To fix that behavior, you need to set FreeRTOS tick rate to 1000Hz in `make menuconfig` -> `Component config` -> `FreeRTOS` -> `Tick rate`.
|
||||
The Arduino component requires the FreeRTOS tick rate `CONFIG_FREERTOS_HZ` set to 1000Hz in `make menuconfig` -> `Component config` -> `FreeRTOS` -> `Tick rate`.
|
||||
|
||||
Compilation Errors
|
||||
------------------
|
||||
|
|
|
|||
Loading…
Reference in a new issue