一种降低仅支持IO唤醒MCU功耗的方法技术

技术编号:17046775 阅读:75 留言:0更新日期:2018-01-17 17:25
本发明专利技术涉及一种降低仅支持IO唤醒MCU能耗的方法,包括将MCU‑1的TX引脚与MCU‑2的RX引脚相连接,将MCU‑1的RX引脚和IO引脚合并后与MCU‑2的TX引脚相连接;MCU‑1执行如下调控:MCU‑1的IO引脚发生电平跳变后,MCU‑1的IO中断功能被触发,唤醒设备后关闭MCU‑1的IO中断功能,打开MCU‑1的串口接收MCU‑2发送的数据,数据接收完毕后打开MCU‑1的IO中断功能、调控设备进行休眠,MCU‑2发送数据前对数据进行增加前导帧处理。上述技术方案中,通过各种手段的实施,使得仅支持IO唤醒功能的单片机的能耗被显著降低。

A method of reducing only IO to wake up the power of MCU

The invention relates to a method for reducing the energy consumption of MCU only supports IO wake, including MCU TX and MCU 1 pin 2 is coupled to the RX pin, MCU 1 RX pin and the IO pin combined with MCU 2 is coupled to the TX pin; MCU 1 performs the following regulation: MCU 1 pin IO electrical level jump change, MCU 1 IO interrupt function is triggered, wake up the device closed after 1 IO MCU interrupt function, open the MCU 1 2 MCU serial port to receive data sent data after receiving 1 open MCU IO interrupt function, control equipment dormancy. MCU 2 before sending the data to the data increase leading frame processing. In the above technical scheme, through the implementation of various means, the energy consumption of the singlechip which only supports the IO wake-up function is significantly reduced.

【技术实现步骤摘要】
一种降低仅支持IO唤醒MCU功耗的方法
本专利技术涉及一种降低仅支持IO唤醒MCU功耗的方法。
技术介绍
在采用CC2630作为产品设计时,产品的设计不止采用IO唤醒方式进行触发,还有特殊功能的产品设计,像一些数据采集并处理的一些产品,CC2630模块需要将传递到模块的数据进行传输,设计上大多采用串口方式进行数据传输,串口能够按照固定的协议模式将需要传输的数据传输到网关以及云平台。CC2630一般作为电池设备使用,所以在设计上对功耗也是有要求的,在传输上设备要保持低功耗模式,市面上有两种方式进行数据唤醒,一种是支持串口唤醒和IO唤醒的单片机,这种产品设计上采用串口数据直接发送,即包括唤醒和数据传输同时进行,但这种设计的MCU市面上一般很少,在功能上也不能做到都能找到这种类型的产品,尤其是用在数据无线传输上,像能够自组网的zigbee产品都是没有串口唤醒功能的。另一种是不支持串口唤醒、仅支持IO唤醒的MCU,在数据发送的时候先使用IO引脚唤醒MCU然后再进行数据传输,之后再将IO恢复初始状态。这两种工作模式能够解决市面上所有的低功耗产品的数据传输问题。所有产品设计上也都是优先考虑串口唤醒的功能,该方式在实际使用上具有更多的优点。首先是硬件电路对接上,两个单片机进行数据通信时,同为低功耗产品,所以在数据通信前需要先进行唤醒,如果使用IO唤醒,则在设计上需要采用两个IO口进行两个单片机相互唤醒,所以在使用上需要有6个连线(两个供电引脚、两个数据传输引脚、两个唤醒引脚),同时在唤醒上两个单片机需要有固定的唤醒协议和数据传输协议,一旦唤醒协议不对,就会对数据传输造成影响,从而影响数据的有效性。若采用串口唤醒,则不需要这么复杂的逻辑了,只需要4个引脚(两个供电、两个数据传输),通信上也不需要设定唤醒逻辑,只需要将数据通过串口发送出去就可以了,因此串口唤醒在对接设计上具有先天的优势。但是不是所有的单片机都能支持串口唤醒的,在设计上优先选择具有串口唤醒的单品机,但是单片机的选择是需要根据其功能进行选定,尤其是一些特殊功能的单片机,比如在智能家居设计领域所采用的能够进行自组网的zigbee芯片,如CC2530和CC2630,这些芯片均不支持串口唤醒,所以只能采用相对比较复杂的IO唤醒方式,即对接的单片机在数据传输时,先进行IO操作唤醒接收单片机,然后进行数据传输,有时要保证数据传输的正确性,而这样唤醒时间拉长,保证数据正确性的同时,会损失很多功耗。
技术实现思路
本专利技术的目的就是提供一种降低仅支持IO唤醒MCU功耗的方法,其可有效解决上述问题,降低该类芯片的功耗。为实现上述目的,本专利技术采用了以下技术方案:一种降低仅支持IO唤醒MCU能耗的方法,包括如下操作:将MCU-1的TX引脚与MCU-2的RX引脚相连接,将MCU-1的RX引脚和IO引脚合并后与MCU-2的TX引脚相连接;MCU-1为仅支持IO唤醒功能的单片机,MCU-2为单片机,MCU-1执行如下调控:MCU-1的IO引脚发生电平跳变后,MCU-1的IO中断功能被触发,唤醒设备后关闭MCU-1的IO中断功能,打开MCU-1的串口接收MCU-2发送的数据,数据接收完毕后打开MCU-1的IO中断功能、调控设备进行休眠;MCU-2发送数据前对数据进行增加前导帧处理。进一步的方案为:设备进入休眠前,MCU-1执行如下判断:若MCU-1没有任务执行,则调节设备进行休眠;若MCU-1有任务未完成,则使用休眠时钟进行定时检测,检测到任务结束后、调节设备进行休眠;若MCU-1有任务未完成,且执行时间T后仍未完成,则强制结束任务,调节设备进行休眠。休眠时钟为MCU-1的外部时钟。设备采用手动配网的方式连网。建立黑名单机制,将已经尝试加入且未成功加入的网络列入黑名单中,在加网扫描时跳过黑名单中的网络。MCU-1为CC2630芯片,设备为包含CC2630芯片的电池设备,如消防用紧急按钮。采用上报电池电量作为心跳,心跳周期为3.9~4.1min。上述技术方案中,通过各种手段的实施,使得仅支持IO唤醒功能的单片机的能耗被显著降低。附图说明图1为MCU-1的唤醒和休眠的原理图;图2为MCU-1和MCU-2的连接示意图;图3为设备进行休眠的流程示意图;图4为设备手动配网的流程示意图。具体实施方式为了使本专利技术的目的及优点更加清楚明白,以下结合实施例对本专利技术进行具体说明。应当理解,以下文字仅仅用以描述本专利技术的一种或几种具体的实施方式,并不对本专利技术具体请求的保护范围进行严格限定。本专利技术提供的降低仅支持IO唤醒MCU能耗的方法,如图1、2所示,将MCU-1的TX引脚与MCU-2的RX引脚相连接,将MCU-1的RX引脚和IO引脚合并后与MCU-2的TX引脚相连接;MCU-1为仅支持IO唤醒功能的单片机,MCU-2为单片机,MCU-1执行如下调控:MCU-1的IO引脚发生电平跳变后,MCU-1的IO中断功能被触发,唤醒设备后关闭MCU-1的IO中断功能,打开MCU-1的串口接收MCU-2发送的数据,数据接收完毕后打开MCU-1的IO中断功能、调控设备进行休眠;MCU-2发送数据前对数据进行增加前导帧处理。数据传输的本质是电平的跳变,根据规定的协议进行数据传输和解析,在串口两个数据线进行数据传输的时候,也是有电平跳变的,但是由于串口有特殊功能,因此该电平跳变不能直接作为普通IO进行唤醒操作。本专利技术中将RX引脚和IO引脚结合实现串口唤醒功能,首先将两单片机的四个引脚进行连接,TX引脚为发送功能引脚,RX引脚为接收功能引脚。将MCU-1的IO引脚与RX引脚进行结合,当收到数据时RX引脚出现电平跳变,但是由于设备在休眠状态,串口接收不能正常工作,需要先进行串口初始化。而串口初始化需要一定的时间,这样会造成数据丢失,因此,本专利技术中在传输数据时增加前导帧,数据传输时先发送无用的前导帧进行唤醒,同时串口进行重新启动初始化,然后开始进行数据接收,当数据接收完毕时设备重新进入休眠模式。这种调控方式能够实现不支持串口唤醒功能的单片机实现串口唤醒功能,同时这种方式能够减少单片机唤醒时的时间。CC2630芯片是一种支持IO唤醒而不支持串口唤醒的单片机,采用这种方式不但能够实现串口唤醒并实现数据传输的功能,而且唤醒时间大大缩短。IO唤醒的过程是:先操作IO中断进行唤醒,然后数据传输,最后恢复IO,这期间为保证数据能够完全正确的接收,前后各需要大约20毫秒的延时,也就是说IO唤醒需要40毫秒加上数据传输的时间。采用IO引脚和串口结合实现的串口唤醒功能,只需要增加3-5个长度的数据时间,按照常用的9600波特率一个字节大概需要1毫秒,一次数据按照20字节也就是20毫秒,IO唤醒至少需要60毫秒的时间,而串口唤醒只需要25毫秒的时间,并且能够将数据进行正确的传输,能够至少减少35毫秒的唤醒时间,作为比较珍贵的电池功耗资源来说,每次触发都能够节省将近60%的唤醒时间,功耗也能做到很大的节省。单片机都有拥有IO唤醒功能,在数据传输时,设备的两个单片机在进行通信时,发送引脚TX和接收引脚RX默认为高电平,串口通信有固定的协议格式,会先发送一个启动位,一个字节数据传输结束时会有一个停止位,通常发送一个字节数据会有10个数据位。MCU-1在本文档来自技高网
...
一种降低仅支持IO唤醒MCU功耗的方法

【技术保护点】
一种降低仅支持IO唤醒MCU能耗的方法,包括如下操作:将MCU‑1的TX引脚与MCU‑2的RX引脚相连接,将MCU‑1的RX引脚和IO引脚合并后与MCU‑2的TX引脚相连接;MCU‑1为仅支持IO唤醒功能的单片机,MCU‑2为单片机,MCU‑1执行如下调控:MCU‑1的IO引脚发生电平跳变后,MCU‑1的IO中断功能被触发,唤醒设备后关闭MCU‑1的 IO中断功能,打开MCU‑1的串口接收MCU‑2发送的数据,数据接收完毕后打开MCU‑1的 IO中断功能、调控设备进行休眠;MCU‑2发送数据前对数据进行增加前导帧处理。

【技术特征摘要】
1.一种降低仅支持IO唤醒MCU能耗的方法,包括如下操作:将MCU-1的TX引脚与MCU-2的RX引脚相连接,将MCU-1的RX引脚和IO引脚合并后与MCU-2的TX引脚相连接;MCU-1为仅支持IO唤醒功能的单片机,MCU-2为单片机,MCU-1执行如下调控:MCU-1的IO引脚发生电平跳变后,MCU-1的IO中断功能被触发,唤醒设备后关闭MCU-1的IO中断功能,打开MCU-1的串口接收MCU-2发送的数据,数据接收完毕后打开MCU-1的IO中断功能、调控设备进行休眠;MCU-2发送数据前对数据进行增加前导帧处理。2.根据权利要求1所述的降低仅支持IO唤醒MCU能耗的方法,其特征在于,设备进入休眠前,MCU-1执行如下判断:若MCU-1没有任务执行,则调节设备进行休眠;若MCU-1有任务未完成,则使用休眠时钟进行定时检测,检测到任务结束后、...

【专利技术属性】
技术研发人员:陈建江曹款成
申请(专利权)人:上海顺舟智能科技股份有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1