今天代码调着调着遇到一个问题,定时器跑一段后就突然不来了,过段时间(不固定)自己就能够从新运行,这时候用RTT去连接又可以跑了,这个确实把我搞得很无语!
调了一天最终锁定是软件定时器的lib库的问题,电流波形如下,
我这里定义的定时器如下:
#define EVT_NUM ((uint8_t) 0x0C)//当前定时器事件数
#define EVT_2S ((uint32_t)0x00000001)
#define EVT_1S_OTA ((uint32_t)0x00000002)
#define EVT_2S_APPTIMEROUT ((uint32_t)0x00000004)
#define EVT_20MS ((uint32_t)0x00000008)
#define EVT_2S_ACC ((uint32_t)0x00000010)
#define EVT_50MS_LED_FLASH ((uint32_t)0x00000020)
#define EVT_50MS_BUGLE ((uint32_t)0x00000040)
#define EVT_PKE_PAIR ((uint32_t)0x00000080)
#define EVT_PKE_TIMEOUT ((uint32_t)0x00000100)
#define EVT_SHUTDOWM_TIMEOUT ((uint32_t)0x00000200)