0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GD32MCU如何实现掉电数据保存?

聚沃科技 2024-01-22 09:55 次阅读

大家在GD32 MCU应用时,是否会碰到以下应用需求:希望在MCU掉电时保存一定的数据或标志,用以记录一些关键的数据。

以GD32E103为例,数据的存储介质可以选择内部Flash或者备份数据寄存器

如下图所示,片内Flash具有10年的保存寿命,10万次擦写,页擦除时间在3.5ms,字写入时间在40us左右,Flash特性决定Flash需要先擦后写,擦写要求的电压范围为供电范围:1.8V-3.6V.

wKgaomWtyuSADVkrAARyH9O8Xyw972.png

GD32 MCU基本都支持备份数据寄存器,GD32E103系列支持84字节数据寄存器,可以在VDD掉电,VBAT有电的情况下进行数据保存,备份数据寄存器不需要擦除可以直接写入,数据更新速度较快。

下面为大家介绍数据掉电保存的实现,电源掉电的检测可以选择使用LVD低压检测功能,如下图所示,LVD 的功能是检测 VDD / VDDA 供电电压是否低于低电压检测阈值,该阈值由电源控制寄存器(PMU_CTL) 中的 LVDT[2:0]位进行配置。 LVD 通过 LVDEN 置位使能,位于电源控制和状态寄存器(PMU_CS) 中的 LVDF 位表示低电压事件是否出现,该事件连接至 EXTI 的第 16 线,用户可以通过配置 EXTI 的第 16 线产生相应的中断。

wKgZomWtyumAYhWhAAFtopO1s58640.png

使用LVD检测到掉电事件后,从LVD阈值到PDR电压之间会有一个时间窗口,可用以实现掉电数据保存,这个时间由掉电速度决定,因而对数据保存的时间要求很高。若系统供电只有VDD供电,VBAT外部未接电池或者需要保存的数据比较多的情况下,可以选择使用内部Flash作为存储介质,为了节省数据更新的时间,可以采用双备份的方式,在系统运行的过程中,先擦除一个备份,检测到掉电事件后,节省擦除时间,直接向备份区域写入更新数据;若系统供电VBAT外接了电池,且更新的数据小于84字节,可以选择将数据写入备份数据寄存器,其更新速度更快。另外如果评估下来掉电时间过快来不及更新数据的话,可以从硬件上减缓掉电速度,以预留更长的时间窗口。

如果您有其他更好的方案,也唤醒评论区留言讨论!

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6030

    文章

    44505

    浏览量

    632386
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16945

    浏览量

    350103
  • GD32
    +关注

    关注

    7

    文章

    403

    浏览量

    24143
收藏 人收藏

    评论

    相关推荐

    GD32 MCU入门教程】GD32 MCU GPIO 结构与使用注意事项

    本文是专门为基于GD32 MCU开发的工程设计人员提供,主要介绍了GPIO的功能配置、内部结构以及在不同场景使用时的注意事项,旨在帮助GD32 MCU开发者优化对通用型输入输出端口(G
    的头像 发表于 09-07 10:34 556次阅读
    【<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b>入门教程】<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> GPIO 结构与使用注意事项

    GD32 MCU 入门教程】GD32 MCU FPU 使用方法

    GD32 MCU FPU 使用方法
    的头像 发表于 08-25 09:24 447次阅读
    【<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> FPU 使用方法

    GD32 MCU 入门教程】GD32 MCU 常见外设介绍(14)RTC 模块介绍

    GD32 MCU内部提供了一个RTC(实时时钟)模块,通过RTC可以实现日历时钟、闹钟等功能。RTC也可以用于深度睡眠或待机模式的低功耗唤醒。不同系列的GD32
    的头像 发表于 08-23 09:18 363次阅读
    【<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> 常见外设介绍(14)RTC 模块介绍

    GD32 MCU 入门教程】GD32 MCU 常见外设介绍(12)FMC 模块介绍

    闪存控制器(FMC),提供了片上闪存需要的所有功能。FMC 也提供了页擦除,整片擦除,以及32 位整字或 16 位半字编程闪存等操作。 GD32 MCU 支持不同类型编程的具体说明如下表 GD32
    的头像 发表于 08-21 09:56 953次阅读
    <b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> 入门教程】<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b> 常见外设介绍(12)FMC 模块介绍

    GD32F150xx系列MCU数据手册

    电子发烧友网站提供《GD32F150xx系列MCU数据手册.pdf》资料免费下载
    发表于 03-13 09:47 0次下载
    <b class='flag-5'>GD</b>32F150xx系列<b class='flag-5'>MCU</b><b class='flag-5'>数据</b>手册

    GD32F130xx系列MCU数据手册

    电子发烧友网站提供《GD32F130xx系列MCU数据手册.pdf》资料免费下载
    发表于 03-13 09:46 1次下载
    <b class='flag-5'>GD</b>32F130xx系列<b class='flag-5'>MCU</b><b class='flag-5'>数据</b>手册

    S7-1200如何实现内部数据掉电保持?

    S7-1200 PLC 可以通过多种方式实现内部数据掉电保持,以确保在断电或重启后数据不会丢失。
    的头像 发表于 01-29 16:11 6771次阅读

    GD32MCU最小系统构成条件#GD32 #MCU #单片机 #51单片机

    单片机mcu
    聚沃科技
    发布于 :2024年01月29日 09:43:06

    GD32MCU最小系统构成条件

    大家是否有这个疑惑:大学课程学习51的时候,老师告诉我们51的最小系统构成?那么进入32位单片机时代,gd32最小系统构成又是怎么样的呢?
    的头像 发表于 01-28 09:22 1236次阅读
    <b class='flag-5'>GD32MCU</b>最小系统构成条件

    不同型号的GD32 MCU如何区分?

    大家是否碰到过以下应用场景:同一套软件代码希望跑在不同型号的GD32 MCU中,但有些地方需要根据MCU型号进行调整?或者上位机或其他MCUGD
    的头像 发表于 01-27 09:32 933次阅读
    不同型号的<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b>如何区分?

    GD32MCU如何实现掉电数据保存?#MCU #GD32 #单片机 #嵌入式

    单片机mcu
    聚沃科技
    发布于 :2024年01月23日 09:39:20

    如何对GD32 MCU进行加密?

    :首先GD32MCU本身支持防硬开盖破解的功能,GD32MCU内部Flash直接硬开盖破解读取的数据无法在同型号的产品上运行,因为GD32MCU内部Flash物理
    的头像 发表于 01-20 09:30 1380次阅读
    如何对<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b>进行加密?

    GD32 MCU的选项字节是什么?

    GD32 MCU的选项字节是什么,有什么功能呢?选项字节被误篡改如何回复?
    的头像 发表于 01-17 09:42 1218次阅读
    <b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b>的选项字节是什么?

    你了解GD32 MCU的命名规则吗

    下面为大家介绍GD32 MCU的通用命名规则,以GD32F303ZGT6为例,其中,GD32代表GD32
    的头像 发表于 01-13 09:38 3411次阅读
    你了解<b class='flag-5'>GD</b>32 <b class='flag-5'>MCU</b>的命名规则吗

    GD32E502xx系列MCU数据手册

    电子发烧友网站提供《GD32E502xx系列MCU数据手册.pdf》资料免费下载
    发表于 01-03 10:43 2次下载
    <b class='flag-5'>GD</b>32E502xx系列<b class='flag-5'>MCU</b><b class='flag-5'>数据</b>手册