This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

FREE RTOS ON NRF52810

Hi,

I am transferring my nrf52832 project to nrf52810,and I have deploy the project according to the user guide (Transferring the project to nRF52810 hardware),

when I add the FREE RTOS system to the project(NRF52810) and build it, i got this erros:

compiling port_cmsis.c...
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis.c(43): error: #35: #error directive: This port can only be used when the project options are configured to enable hardware floating point support.
#error This port can only be used when the project options are configured to enable hardware floating point support.
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis.c: 0 warnings, 1 error
compiling port_cmsis_systick.c...
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(124): error: #20: identifier "NRF_RTC2" is undefined
uint32_t systick_counter = nrf_rtc_counter_get(
ortNRF_RTC_REG);
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(171): error: #20: identifier "NRF_RTC2" is undefined
nrf_rtc_prescaler_set(
ortNRF_RTC_REG, portNRF_RTC_PRESCALER);
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(177): error: #20: identifier "RTC2_IRQn" is undefined
NVIC_SetPriority(
ortNRF_RTC_IRQn, configKERNEL_INTERRUPT_PRIORITY);
..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c: 0 warnings, 3 errors


Did NRF52810 support FREE RTOS system? why there is no demo about FREE RTOS on NRF52810 in the example?

I really spent a lot of time in theses erros, please help me.

Thanks.

Parents Reply Children
  • Hi,

    I have try according to the proposed, It could solve some problems, but there are some errors about RTC when compiling   port_cmsis_systick.c, how to solve these problems?

    compiling port_cmsis_systick.c...
    ..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(124): error: #20: identifier "NRF_RTC2" is undefined
    uint32_t systick_counter = nrf_rtc_counter_get(
    ortNRF_RTC_REG);
    ..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(171): error: #20: identifier "NRF_RTC2" is undefined
    nrf_rtc_prescaler_set(
    ortNRF_RTC_REG, portNRF_RTC_PRESCALER);
    ..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c(177): error: #20: identifier "RTC2_IRQn" is undefined
    NVIC_SetPriority(
    ortNRF_RTC_IRQn, configKERNEL_INTERRUPT_PRIORITY);
    ..\..\..\..\..\..\external\freertos\portable\CMSIS\nrf52\port_cmsis_systick.c: 0 warnings, 3 errors

    Kind regards,

    THANKS.

  • Hi,

     

    Sorry that I did not address this one earlier. As the nRF52810 only has 2 RTC instances as listed in this overview of the nRF52-series (RTC0 and RTC1), you need to change this to one of these that are available in your application. Note that RTC0 is used by the softdevice.

     

    Best regards,

    Håkon

Related