一种防止MCU深度休眠期间UART接收丢数据的方法

基本信息

申请号 CN201911359020.7 申请日 -
公开(公告)号 CN111198776A 公开(公告)日 2020-05-26
申请公布号 CN111198776A 申请公布日 2020-05-26
分类号 G06F11/07;G06F9/4401 分类 计算;推算;计数;
发明人 吴亮;汪成喜;詹胜林;邓敏;徐栋麟 申请(专利权)人 上海亮牛半导体科技有限公司
代理机构 大连科技专利代理有限责任公司 代理人 上海亮牛半导体科技有限公司
地址 201207 上海市浦东新区中国(上海)自由贸易试验区芳春路400号1幢3层
法律状态 -

摘要

摘要 本发明公开了一种防止MCU深度休眠期间UART接收丢数据的方法,包括以下步骤:S1:MCU进入深度休眠模式,PLL关闭、系统主时钟关闭、UART处于aways on电源域,UART的时钟源APB Clock从PLL切换至crystal;S2:UART接收到第一个数据帧后向CPU发起唤醒信号;S3:MCU被唤醒后,打开PLL,并将UART的时钟源APB Clock从crystal切换至PLL,软件系统进入正常运行模式。本发明的特点是:可通过UART直接唤醒MCU,无需额外的GPIO,MCU在深度休眠过程中使用UART接收数据,且对方不用等待,不需要发送dummy data,不额外占用GPIO中断资源,保证UART接收不丢失数据。