rtc秒钟问题

2019-07-20 19:46发布

小弟学32不久,遇到的问题也很多,这次把rtc时钟的值取出来,用液晶显示出来,可是秒钟会从9跳到16,中间还会跳好几次,秒钟一直走到90,然后分钟会加一。这是怎么回事啊?求大神帮帮我,求原子哥哥帮我分析分析? 时钟初始化函数和原子哥的一样,就是主函数不一样然后现象就不一样了。
int main(void)
{
        u8 hours,minutes,seconds;
        RTC_TimeTypeDef RTC_Times;
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
        delay_init(168);
        RTC_Time_Init();
        LCD_Init();
  LCD_Clear(RED);
        while(1)
        {
        RTC_GetTime(RTC_Format_BCD, &RTC_Times);
        hours=RTC_Times.RTC_Hours;
        minutes=RTC_Times.RTC_Minutes;
        seconds=RTC_Times.RTC_Seconds;
               
  LCD_ShowxNum(30,40,hours,4,24,1);
        LCD_ShowxNum(70,40,minutes,4,24,1);
        LCD_ShowxNum(110,40,seconds,10,24,1);
        delay_ms(800);
        LCD_Clear(RED);
        }               
}


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
4条回答
qianyuyu
1楼-- · 2019-07-20 22:28
 精彩回答 2  元偷偷看……
古古怪怪
2楼-- · 2019-07-21 01:01
还有我的RTC函数 RTC_SetTime(RTC_Format_BCD, &RTC_TimeSet);和   RTC_SetDate(RTC_Format_BCD, &RTC_DateSet); 参数是BCD,和主函数是对应一样的,如果我把参数全部换成BIN ,秒钟就正常了,为什么呢?
古古怪怪
3楼-- · 2019-07-21 05:20
 精彩回答 2  元偷偷看……
古古怪怪
4楼-- · 2019-07-21 05:54
焕然大悟

一周热门 更多>