void signalDone( error_t err ) {
atomic m_state = S_STARTED;
abortSpiRelease = FALSE;
call ChipSpiResource.attemptRelease();
// only success one times,what happen???
if( err == SUCCESS )
call Leds.led1Toggle();
else
call Leds.led2Toggle();
signal Send.sendDone( m_msg, err );
atomic m_state = S_STARTED;
abortSpiRelease = FALSE;
call ChipSpiResource.attemptRelease();
// only success one times,what happen???
if( err == SUCCESS )
call Leds.led1Toggle();
else
call Leds.led2Toggle();
signal Send.sendDone( m_msg, err );
}
通过 debug,发现,signalDone()成功过一次,以后的每次都是失败,这样说明,实际上是成功发送过一次,但是由于那个地方的state不正确导致之后的无法正常发送,所以需要仔细的研究每一个地方,可能就是那些地方不对了
主要是看 CaptureSFD
还有timer也很重要 其实都很重要
现在回去吃饭去啦 饿了