TI的工作人员,
在中断函数HAL_ISR_FUNCTION( halKeyPort0Isr, P0INT_VECTOR )里放了osal_start_timerEx( SampleApp_TaskID, PIR_Status_Send_EVT, HAL_PIR_INTERVAL_VALUE); 这个函数。希望如果在2S内再无脉冲触发中断则置位PIR_Status_Send_EVT任务发送数据。
但是在运行时发现,数据总是发两次。只要第一次进中断就发数据,但是数据显示从触发osal_start_timerEx函数到执行PIR_Status_Send_EVT任务,经过了10多秒,远远超过设定的2S。在第一次数据的2S之后就发送了第二次数据,第二次数据的时间是2S。
请问这是为什么呢?