|
定时器事件(添加步骤)
1,#define SAMPLEAPP_Timeing_MSG_DOOR 0xD1DE //自己添加的
#define SAMPLEAPP_Timeing_MSG_DOORTIMEOUT 5000
2,在任务处理函数中添加这个
if ( events & SAMPLEAPP_Timeing_MSG_DOOR) //自己定义的定时事件
{
if(dingshi<2)
{
dingshi++;
osal_start_timerEx( SampleApp_TaskID,
SAMPLEAPP_Timeing_MSG_DOOR,
SAMPLEAPP_Timeing_MSG_DOORTIMEOUT );
}
else{
R1=1;
R2=1;
dingshi=0;
}
return (events ^ SAMPLEAPP_Timeing_MSG_DOOR);
3,在相应的地方调用
osal_start_timerEx( SampleApp_TaskID,
SAMPLEAPP_Timeing_MSG_DOOR,
SAMPLEAPP_Timeing_MSG_DOORTIMEOUT );
出现的问题 我用这个控制继电器吸合的时间,本应定时15秒,但是继电器的灯也就闪了一下就完了,我系统里面的 osal_start_timerEx( SampleApp_TaskID,
SAMPLEAPP_RUN__EVT,
SAMPLEAPP_RUN_TIMEOUT );//启动超时定时器
我用上面这个函数,还是同样的放在那个循环里就没问题,可以定时15秒,请问这是为什么呢?
|
|