nRF51822 配置超过4个的 按键驱动
最近一个用到超过4个按键驱动,PCA10028 的板子上只有4个,所以SDK9 的pca10028.h 的宏只定义了4
#define BUTTONS_NUMBER 4
但是我要用超过4个的时候,就不行了,bsp_buttons_init() 函数返回NRF_ERROR_NO_MEM= 0x00000004, 意思是没有足够的空间了。
神经病,怎么可能。仔细往下面找代码,就会找到channel_port_alloc() 函数引起的,
这里我就不分析是什么原因了,自己看代码,解决的办法请看下面的帖子
https://devzone.nordicsemi.com/question/96461/how-to-use-more-that-4-buttons/
就是说改下这个宏:
#define GPIOTE_CONFIG_NUM_OF_LOW_POWER_EVENTS 14 //6
比如我用了 14个,就改成 14,
就这样。
还有个宏 还没时间看它,可是要注意一下:
#define NUMBER_OF_GPIO_TE 4
再说吧,深圳下大雨,我要下班了,拜拜,各位。