我的购物车(0)

求助stm8L051 RTC 唤醒失败

作者:varitec ,2018/12/12 17:00:04 发布     举报
    (509) (0) (0) (1)
  •  /* Select HSE as system clock source */
            CLK_SYSCLKSourceSwitchCmd(ENABLE);
            CLK_SYSCLKSourceConfig(CLK_SYSCLKSource_LSI);
            /* system clock prescaler: 1*/
            CLK_SYSCLKDivConfig(CLK_SYSCLKDiv_1);
            while (CLK_GetSYSCLKSource() != CLK_SYSCLKSource_LSI)
            {}
            CLK_PeripheralClockConfig(CLK_Peripheral_RTC, ENABLE);
            CLK_RTCClockConfig(CLK_RTCCLKSource_LSI, CLK_RTCCLKDiv_1);
            while (CLK_GetFlagStatus(CLK_FLAG_LSIRDY) == RESET);
            RTC_WakeUpClockConfig(RTC_WakeUpClock_RTCCLK_Div16);
            RTC_ITConfig(RTC_IT_WUT, ENABLE);
            enableInterrupts();

            while(1)
                    {        
                    RTC_SetWakeUpCounter(1);
                    RTC_WakeUpCmd(ENABLE);
                    halt();
                    RTC_WakeUpCmd(DISABLE);
                    GPIO_ToggleBits(LED_GPIO_PORT, LED_GPIO_PINS);        
                    }
    RTC配置会卡在RTC_WakeUpCmd(ENABLE)函数内的
    /* Wait until WUTWF flag is set */
        while (((RTC->ISR1 & RTC_ISR1_WUTWF) == RESET) && ( wutwfcount != WUTWF_TIMEOUT))
        {
          wutwfcount++;
        }
    请问给为前辈,是我哪里没有配置好吗?
标签:

微控制器

共有1条网友评论
amphenol 发表于2018/12/12 17:00:21
while(1)
                {        
                RTC_WakeUpCmd(ENABLE);
                halt();
                RTC_WakeUpCmd(DISABLE);
                GPIO_ToggleBits(LED_GPIO_PORT, LED_GPIO_PINS);        
                }
这样就好了,知其然而不知其所以然。
有帮助(0)没帮助(0)引用此答案
1/1
文明上网,理性发言
专题版主
申请成为版主
  • Royston

    高级工程师 安富利中国有限公司 FAE熟练应用,ISE14.1 工具

  • Royston

    高级工程师 安富利中国有限公司 FAE熟练应用,ISE14.1 工具

  • Royston

    高级工程师 安富利中国有限公司 FAE熟练应用,ISE14.1 工具

  • Royston

    高级工程师 安富利中国有限公司 FAE熟练应用,ISE14.1 工具

  • Royston

    高级工程师 安富利中国有限公司 FAE熟练应用,ISE14.1 工具

最新分享上传与展示原则:
1、首先展示的产品必须是电子业内的作品;
2、对业内人士有学习的意义;
3、作品可以以广告的形式出现,若广告目的太
强烈,不予展示;
4、带病毒性的文件,不予展示,若严重,还会
屏蔽会员IP;
5、任何的分享都会通过系统管理员的审核,审
核时间,通常不超过24小时;