nrf52832编程出现identifier "NRFX_TIMER0_INST_IDX" is undefined

环境:

SDK版本:15.2.0

协议栈版本::s132_nrf52_6.1.0_softdevice

板子:nrf52832

编程环境:keil

问题描述:

最近在做输入捕获,添加static const nrf_drv_timer_t timer0 = NRF_DRV_TIMER_INSTANCE(0); 时出现

identifier "NRFX_TIMER0_INST_IDX" is undefined

解决方法:

在sdk_config.h文件中,将下列宏参数定义修改为1。

//使能所有定时器
#ifndef NRFX_TIMER_ENABLED
#define NRFX_TIMER_ENABLED 1
#endif

//使能定时器0
#ifndef NRFX_TIMER0_ENABLED
#define NRFX_TIMER0_ENABLED 1
#endif

//使能所有定时器
#ifndef TIMER_ENABLED
#define TIMER_ENABLED 1
#endif

//使能定时器0
#ifndef TIMER0_ENABLED
#define TIMER0_ENABLED 1
#endif

若想使用定时器1、2,则修改相应的定时器:

比如定时器1就这样配置:

#define TIMER1_ENABLED     1

#define NRFX_TIMER1_ENABLED     1    

定时器2就这样配置:

#defineTIMER2_ENABLED     1

#define NRFX_TIMER2_ENABLED     1    

扩展与总结

在nrf52编程里,除了要将需要的driver的.c文件加入进来,包含头文件.h路径之外,你还需要在sdk_config.h文件里将相应的宏定义修改为1才能使能该功能。

如:要想使用ppi功能,必须将sdk_config.h中的NRFX_PPI_ENABLED 、PPI_ENABLED 置1才能正常编译,否则会出现L6218未定义错误。

猜你喜欢

转载自blog.csdn.net/Hanghang_/article/details/85107460
今日推荐