SDK: nRF5_SDK_15.2.0
IDEs: Keil
SoftDevices: S132
When I use the SDK example to build for nRF52810, following the steps stated in nRF5_SDK/v15-2-0/nrf52810_user_guide#ug_52810_own_project link, the compiler prompts amout of errors about the UART as following:
*** Using Compiler 'V5.06 update 6 (build 750)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(70): error: #136: struct "<unnamed>" has no field "TASKS_SUSPEND"
NRF_UART_TASK_SUSPEND = offsetof(NRF_UARTE_Type, TASKS_SUSPEND), /**< Task for suspending UART. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(97): error: #20: identifier "UART_INTENCLR_CTS_Msk" is undefined
NRF_UART_INT_MASK_CTS = UART_INTENCLR_CTS_Msk, /**< CTS line activation interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(98): error: #20: identifier "UART_INTENCLR_NCTS_Msk" is undefined
NRF_UART_INT_MASK_NCTS = UART_INTENCLR_NCTS_Msk, /**< CTS line deactivation interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(99): error: #20: identifier "UART_INTENCLR_RXDRDY_Msk" is undefined
NRF_UART_INT_MASK_RXDRDY = UART_INTENCLR_RXDRDY_Msk, /**< Data ready in RXD interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(100): error: #20: identifier "UART_INTENCLR_TXDRDY_Msk" is undefined
NRF_UART_INT_MASK_TXDRDY = UART_INTENCLR_TXDRDY_Msk, /**< Data sent from TXD interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(101): error: #20: identifier "UART_INTENCLR_ERROR_Msk" is undefined
NRF_UART_INT_MASK_ERROR = UART_INTENCLR_ERROR_Msk, /**< Error detection interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(102): error: #20: identifier "UART_INTENCLR_RXTO_Msk" is undefined
NRF_UART_INT_MASK_RXTO = UART_INTENCLR_RXTO_Msk /**< Receiver timeout interrupt. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(112): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud1200" is undefined
NRF_UART_BAUDRATE_1200 = UART_BAUDRATE_BAUDRATE_Baud1200, /**< 1200 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(113): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud2400" is undefined
NRF_UART_BAUDRATE_2400 = UART_BAUDRATE_BAUDRATE_Baud2400, /**< 2400 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(114): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud4800" is undefined
NRF_UART_BAUDRATE_4800 = UART_BAUDRATE_BAUDRATE_Baud4800, /**< 4800 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(115): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud9600" is undefined
NRF_UART_BAUDRATE_9600 = UART_BAUDRATE_BAUDRATE_Baud9600, /**< 9600 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(116): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud14400" is undefined
NRF_UART_BAUDRATE_14400 = UART_BAUDRATE_BAUDRATE_Baud14400, /**< 14400 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(117): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud19200" is undefined
NRF_UART_BAUDRATE_19200 = UART_BAUDRATE_BAUDRATE_Baud19200, /**< 19200 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(118): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud28800" is undefined
NRF_UART_BAUDRATE_28800 = UART_BAUDRATE_BAUDRATE_Baud28800, /**< 28800 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(119): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud31250" is undefined
NRF_UART_BAUDRATE_31250 = UART_BAUDRATE_BAUDRATE_Baud31250, /**< 31250 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(120): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud38400" is undefined
NRF_UART_BAUDRATE_38400 = UART_BAUDRATE_BAUDRATE_Baud38400, /**< 38400 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(121): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud56000" is undefined
NRF_UART_BAUDRATE_56000 = UART_BAUDRATE_BAUDRATE_Baud56000, /**< 56000 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(122): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud57600" is undefined
NRF_UART_BAUDRATE_57600 = UART_BAUDRATE_BAUDRATE_Baud57600, /**< 57600 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(123): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud76800" is undefined
NRF_UART_BAUDRATE_76800 = UART_BAUDRATE_BAUDRATE_Baud76800, /**< 76800 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(124): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud115200" is undefined
NRF_UART_BAUDRATE_115200 = UART_BAUDRATE_BAUDRATE_Baud115200, /**< 115200 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(125): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud230400" is undefined
NRF_UART_BAUDRATE_230400 = UART_BAUDRATE_BAUDRATE_Baud230400, /**< 230400 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(126): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud250000" is undefined
NRF_UART_BAUDRATE_250000 = UART_BAUDRATE_BAUDRATE_Baud250000, /**< 250000 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(127): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud460800" is undefined
NRF_UART_BAUDRATE_460800 = UART_BAUDRATE_BAUDRATE_Baud460800, /**< 460800 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(128): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud921600" is undefined
NRF_UART_BAUDRATE_921600 = UART_BAUDRATE_BAUDRATE_Baud921600, /**< 921600 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(129): error: #20: identifier "UART_BAUDRATE_BAUDRATE_Baud1M" is undefined
NRF_UART_BAUDRATE_1000000 = UART_BAUDRATE_BAUDRATE_Baud1M, /**< 1000000 baud. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(138): error: #20: identifier "UART_ERRORSRC_OVERRUN_Msk" is undefined
NRF_UART_ERROR_OVERRUN_MASK = UART_ERRORSRC_OVERRUN_Msk, /**< Overrun error. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(139): error: #20: identifier "UART_ERRORSRC_PARITY_Msk" is undefined
NRF_UART_ERROR_PARITY_MASK = UART_ERRORSRC_PARITY_Msk, /**< Parity error. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(140): error: #20: identifier "UART_ERRORSRC_FRAMING_Msk" is undefined
NRF_UART_ERROR_FRAMING_MASK = UART_ERRORSRC_FRAMING_Msk, /**< Framing error. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(141): error: #20: identifier "UART_ERRORSRC_BREAK_Msk" is undefined
NRF_UART_ERROR_BREAK_MASK = UART_ERRORSRC_BREAK_Msk, /**< Break error. */
..\..\..\..\..\..\modules\nrfx\hal/nrf_uart.h(150): error: #20: identifier "UART_CONFIG_PARITY_Excluded" is undefined
NRF_UART_PARITY_EXCLUDED = UART_CONFIG_PARITY_Excluded << UART_CONFIG_PARITY_Pos, /**< Parity excluded. */
..\..\..\..\..\..\modules\nrfx\drivers\src\nrfx_uart.c: 0 warnings, 30 errors
".\_build\nrf52832_xxaa.axf" - 30 Error(s), 0 Warning(s).
Target not created.
Build Time Elapsed: 00:00:25
I check the "nrf.h" and find that the macro "NRF52810_XXAA" for nRF52810 will take the "nrf52810_bitfields.h" included instead the "nrf52810_bitfields.h".The "nrf52810_bitfields.h" defines the macros about the UART as this: "UARTE_XXX", but the macros used by the project source files and defined in "nrf52810_bitfields.h" are like this: "UART_XXX", which cause the compiling failed.
Can I change the macros used by the project source files from "UART_XXX" to "UARTE_XXX" simply? Or change the macros about the UART in "nrf52810_bitfields.h" from "UARTE_XXX" to "UART_XXX" simply? Will it work? Will it cuase something error unexpected?
What way else can I use to solve this compiler errors and make the project run normally in function?
Please give some help, thank you!