更新:一些简化的代码说明我的计时器设置,错误触发处理程序问题是我的错误,但另一个问题发生。
static void app_watchdog_second_timer_handler() //每秒调用,
{
second_coun++;//1000 ms
if(second_count == 10)
{
uint32_t delay = (co_rand_byte() % 20) * 10 + 30;
}
if(second_count == 30) // a period is 30 second
{
second_coun = 0;
}
}
void sendSensorDataHandler(void) //每周期调用一次
{
APP_SEND_DATA_TIMER = EASY_TIMER_INVALID_TIMER;/ /这条线解决我之前的问题,现在定时器触发正确的处理程序< br / >} < / p > < p >空白resetSendData (void) / / triggerd在某些情况下< br / > {< br / >如果(APP_SEND_DATA_TIMER ! = EASY_TIMER_INVALID_TIMER) / /这条线解决我之前的问题,现在定时器触发正确的处理程序< br / > {< br /> // ---------- 另一个问题出现在这里,这个functionocassionly删除我的APP_WATCHDOG_SECOND_TIMER导致没有计时器运行,我检查timer_callbacks[APP_TIMER_MAX_NUM],空
APP_SEND_DATA_TIMER = app_easy_timer_modify(APP_SEND_DATA_TIMER,RESET_SEND_DATA_TIME + (co_rand_byte () % 20) * 10); < br / >} < / p > < p >} < / p > < / div > < / div > < / div > < div class =”字段field-name-field-forum-keywords field-type-taxonomy-term-reference field-label-above”> < div class = "字段标签" >关键词:,< / div > < div class = "字段条目" > < div class =”field-item甚至“> < a href = " / resource-keywords / easy-timer-bug” typeof="skos:Concept" property="rdfs:label skos:prefLabel" datatype="">easy timer bug