你好,
在我的项目中,设备的默认状态是扩展睡眠。在引脚P1_0接收到低信号时,设备唤醒,启动5秒定时器并设置uart读取功能。在5秒计时器到期时,设备进一步进入睡眠模式。UART数据在这5秒内发送到设备。Uart2用于实现。
我正在调试模式下运行设备。我在唤醒函数、uart读取完成函数和计时器到期函数中插入了断点。
当我设置要读取的字节数为10或更少时,流工作正常。即,在接收到中断时,控件到达唤醒函数,然后在接收到enitreuart数据时,到达uart_read_callback函数,在计时器到期时到达计时器回调函数。
当要读取的字节数设置为16时,就会发生问题。然后,控件没有到达计时器到期回调。即,在唤醒时,设备接收16字节的数据,但控制既没有达到计时器到期,也没有进入睡眠模式。
请提出可能的原因相同。
谢谢
设备:
嗨wisilica,
你能不能检查一下,当计时器没有到达到期时间时,你的代码在哪里结束?你的代码还在运行还是进入了断言?从问题的描述中,我看不出问题可能是什么。
谢谢,PM_Dialog