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

How to use GPIOTE driver

Hello,

I'm using SDK12.2.0.

I opened the PPI example (in SES). I want to use the GPIOTE driver to trigger GPIO tasks on Timer events. So I #include "drivers_nrf/gpiote/nrf_drv_gpiote.h" and included the file drivers_nrf/gpiote/nrf_drv_gpiote.c for compilation.

Trying to call nrf_drv_gpiote_init(); in main, the implementation wasn't found. I looked in nrf_drv_gpiote.c, where it has#if NRF_MODULE_ENABLED(GPIOTE) for the whole file. Looked at its definition, and it appears that I need GPIOTE_ENABLED = 1 in the project-wide preprocessor definitions.

The next problem is that on line 35 in nrf_drv_gpiote.c, I get this error: ‘GPIOTE_CONFIG_IRQ_PRIORITY’ undeclared here (not in a function).

And I'm not sure what to do now. I looked in infocenter, and couldn't find anything on having to define GPIOTE_ENABLED = 1 in order to use the gpiote driver, nor on GPIOTE_CONFIG_IRQ_PRIORITY.

I would expect all this to be documented somewhere else than implicitly in the implementation file. Have I overlooked something?

Related