嗨,对话框在我的项目中,我需要测量GPIO中断从HIGH到LOW和LOW到HIGH之间的时间,有时候时间很短,比如0.1ms。所以我不能用tick。为了节省功耗,我希望设备保持下一次休眠,timer0在后台工作,并设置GPIO唤醒。一旦GPIO中断触发,我将读取timer0计数并记录它。问题是timer0在下一次睡眠时默认是关闭的。我可以设置系统extsleep,但保持timer0上电吗?谢谢。
最好的问候,布伦特郑
嗨brent_zheng,
当设备和所有外围设备进入休眠状态时,计时器(0和2)将关闭,在扩展休眠模式下启用计时器的唯一选项是内核计时器(app_easy_timer())。在这种情况下,你必须记住,在计时器结束后,每次你做这个过程时,都会调用中断和BLE。
谢谢你!
STS_Dialog。
亲爱的STS_Dialog,
谢谢你的快速回复。内核定时器不能满足我的要求,因为我需要得到的时间周期小于一个滴答。我能在下次睡觉时打开所有的外围设备吗?谢谢。
您可以保持所有外设都开着,但在这种情况下,您已经将您的计时器(0或2)设置为由LP时钟更新。您可以通知DA14585的数据表(在数据表部分的文档选项卡中)。在你的场景中,静态内联void arch_turn_peripherals_off()函数将根据你的实现计划工作。
但我在下次睡觉的时候尝试打开所有外围设备时遇到了问题。我尝试在arch_turn_peripherals_off函数中更改如下:// SetBits16(PMU_CTRL_REG, peripher_sleep, 1);//关闭外部电源SetBits16 (PMU_CTRL_REG PERIPH_SLEEP 0);即使没有开启计时器(0或2),设备也会在BLE通告期间重复复位。如果不调用arch_goto_sleep中的arch_turn_peripherals_off,系统可以正常运行。但似乎系统没有进入下一个睡眠,因为SCB->SCR |= 1<<2;仅在arch_turn_peripherals_off中设置。
所以你能告诉我如何修改SDK代码,让应用外设在下次睡眠时打开吗?谢谢。
最好不要修改核心SDK代码,因为这可能会产生额外的问题,需要进行广泛的测试。
谢谢,
STS_Dialog
如果我能在延长睡眠模式下使用timer0,这对电池寿命非常有帮助。所以你能帮我检查一下吗?谢谢。
你好,
我们现在不能为计时器0支持这个用例。
请查看以下链接:
https://support.dialog-semiconductor.com/smarttag-ref-design-sleep-mode-..。
嗨brent_zheng,
当设备和所有外围设备进入休眠状态时,计时器(0和2)将关闭,在扩展休眠模式下启用计时器的唯一选项是内核计时器(app_easy_timer())。在这种情况下,你必须记住,在计时器结束后,每次你做这个过程时,都会调用中断和BLE。
谢谢你!
STS_Dialog。
亲爱的STS_Dialog,
谢谢你的快速回复。
内核定时器不能满足我的要求,因为我需要得到的时间周期小于一个滴答。我能在下次睡觉时打开所有的外围设备吗?
谢谢。
您可以保持所有外设都开着,但在这种情况下,您已经将您的计时器(0或2)设置为由LP时钟更新。您可以通知DA14585的数据表(在数据表部分的文档选项卡中)。在你的场景中,静态内联void arch_turn_peripherals_off()函数将根据你的实现计划工作。
谢谢你!
STS_Dialog。
亲爱的STS_Dialog,
但我在下次睡觉的时候尝试打开所有外围设备时遇到了问题。我尝试在arch_turn_peripherals_off函数中更改如下:
// SetBits16(PMU_CTRL_REG, peripher_sleep, 1);//关闭外部电源
SetBits16 (PMU_CTRL_REG PERIPH_SLEEP 0);
即使没有开启计时器(0或2),设备也会在BLE通告期间重复复位。
如果不调用arch_goto_sleep中的arch_turn_peripherals_off,系统可以正常运行。但似乎系统没有进入下一个睡眠,因为SCB->SCR |= 1<<2;仅在arch_turn_peripherals_off中设置。
所以你能告诉我如何修改SDK代码,让应用外设在下次睡眠时打开吗?
谢谢。
嗨brent_zheng,
最好不要修改核心SDK代码,因为这可能会产生额外的问题,需要进行广泛的测试。
谢谢,
STS_Dialog
亲爱的STS_Dialog,
如果我能在延长睡眠模式下使用timer0,这对电池寿命非常有帮助。所以你能帮我检查一下吗?
谢谢。
最好的问候,
布伦特郑
你好,
我们现在不能为计时器0支持这个用例。
请查看以下链接:
https://support.dialog-semiconductor.com/smarttag-ref-design-sleep-mode-..。
谢谢,
STS_Dialog。