这个想法行得通吗?
基于STM8L051的无线通信,主机STM8L051通过配置NRF24L01,接收端用无线转串口模块连接至PC。 先设置STM8L051中RTC处于工作状态,并且空闲时STM8进入低功耗模式(Active-Halt或者Halt模式),当外部中断触发,STM8暂时退出低功耗模式,将此时时间记录并存入自身EEPROM中,之后继续进入低功耗模式。 当想用PC接收STM8存储的时间信号时,将STM8的NRF模块靠近PC端NRF模块, 此时接收端NRF模块发送信号给STM8再次激活其退出低功耗模式,并将储存的时间数据发送至PC端。问题:1.STM8在低功耗模式(即Active-Halt或者Halt下) RTC还会继续工作吗?
2.因为NRC24L01是无线收发芯片,是否能想前面那样,先从PC端的NRF模块发送射频信号给STM8端NRF模块(类似于STM8接收到一个中断信号),让STM8退出低功耗模式,将存储数据传输至PC端?
希望大佬给小弟解答下!!万分感谢
3.关于STM8L051在各个低功耗模式下的耗能情况和NRF24L01各工作模式下的耗能大概是多少呢? 从原理上是可行的,首先,RTC使用的后备电源和时钟,可以唤醒低功耗模式下的主程序,这个是没问题的。
NRC24L01模块一般是将射频信号转换为了UART,所以配置UART接收中断也是可以唤醒主程序。不过这会带来一个问题,你还是需要给NRC24L01提供常电,因此主芯片的功耗可能经过低功耗模式得到了降低,但是射频模块的功耗要考虑一下,是否得不偿失。
Cortex系列的MCURTC在任何模式下都是工作的,除非没电了 STM8L可以直接用RTC待机,功耗1uA左右,很小,用内部的低速RC晶振。NRF24L01有一个引脚可以唤醒单片机的,至于功耗你要看看该规格书。 stm1024 发表于 2019-5-20 20:33
从原理上是可行的,首先,RTC使用的后备电源和时钟,可以唤醒低功耗模式下的主程序,这个是没问题的。
NRC2 ...
主要想的就是STM8和NRF不工作是一起进入低功耗模式, 当第一个中断来时激活STM8记录下此时时间并存储之后继续进入低功耗,此时的NRF一直保持低功耗状态;当接近接收模块准备向接收模块传送数据,同时激活STM8和NRF进入工作模式,将数据传输至PC。 这样的话能实现吗? 那第二次激活STM8和NRF退出低功耗模式应该要怎么触发呢?通过外部中断吗?(能否像RFID系统那样,靠近接收端时,接收端发射频信号给发送端激活其工作并传输数据)
页:
[1]