disable autocrc cause some error the analysis

通过对函数signalDone()的debug发现,其成功发送过一次信号,但随后的发送失败,原因在于状态管理的错误。文章深入探讨了状态管理、捕获SFD、定时器等关键因素,并指出在信号发送过程中的复杂交互。建议仔细审查每个部分以解决后续发送失败的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  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 );

  }



通过 debug,发现,signalDone()成功过一次,以后的每次都是失败,这样说明,实际上是成功发送过一次,但是由于那个地方的state不正确导致之后的无法正常发送,所以需要仔细的研究每一个地方,可能就是那些地方不对了


主要是看 CaptureSFD


还有timer也很重要 其实都很重要

现在回去吃饭去啦 饿了

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值