• GD32F4系列外部晶振启动异常问题解析


    刚好有个项目用GD32F407系列,用到了RTC和纽扣电池。中间产品测试时,发现界面时钟没有更新,软件工程师调试反馈是LXTAL使能后无法稳定。于是,硬件来分析:

    1)示波器查看,确实32768晶振两边都无明显规律波形。

    2)查看生产BOM表、查看Datasheet,未发现异常。

    因此同样的产品做过多次样机了,所以手上有一些OK的板子,就通过对调器件来分析。

    3)对调电容,OK的还是OK,NG的还是NG。

    4)对调晶振,OK的还是OK,NG的还是NG。

    5)对调MCU,OK的板NG了,NG的板依然NG。

    暂且认为高温把OK的MCU搞坏了吧。

    重新领取库存全新物料,焊接到NG的板子上,也还是NG。
    6)试一下匹配电容,从8.2pF——22pF(标称负载电容式12.5pF),都换过,NG。

    ————————————————————————————————————

    当时正巧试产设备和一批研发样机,都出现了这个问题,于是赶紧反馈给双边供应商,寻求帮助。

    ————————————————————————————————————

    开始自己调软件,发现故障现象莫名其妙:

    A)LXTAL稳定失败

    B)LXTAL稳定成功,但是RTC不计数

    C)LXTAL稳定成功,但是掉电后不走时

    D)IR32K稳定失败

    E)IR32K稳定成功

    再与软件工程师协作下,发现NG的板子烧写他的程序OK了。

    不得不怀疑和软件有关,对比代码:

    rcu_periph_clock_enable(RCU_PMU);
    pmu_backup_write_enable(); 

    上面两句很重要,需要弄在下面句子之前面。

    rcu_osci_on(RCU_LXTAL);
    if(SUCCESS==rcu_osci_stab_wait(RCU_LXTAL))

    OK,LXTAL正常启动,示波器检测有波形,但是还是有些故障。

    最后发现,去纽扣电池,掉电再上电,重新烧写程序,一切OK。

    其实,本文没有完全解答怎么配置LXTAL才能100%正常。

    以上信息,仅供参考阅读。

     

  • 相关阅读:
    40个高质量SSM毕设项目分享【源码+论文】(五)
    SpringBoot 整合 Quartz 定时任务框架
    Docker 使用
    马斯克热搜体质无疑,称已将大脑上传云端,却遭网友热议!
    【】对peer的WebRtcConnection创建
    四、分类算法 - 随机森林
    IT项目管理中如何沟通?
    【图数据库实战】HugeGraph架构
    .NET8 Identity Register
    涅槃:时序数据库的终局与重生
  • 原文地址:https://blog.csdn.net/mrlixirong/article/details/133918992