RTC_EnterConfigMode();// 允许配置
RTC_SetPrescaler(32767); // 设置RTC预分频的值
RTC_WaitForLastTask(); // 等待最后一次对RTC寄存器的写操作完成
RTC_Set(2010,2,14,17,42,55); // 设置时间
RTC_ExitConfigMode(); //退出配置模式
void RTC_SetPrescaler(uint32_t PrescalerValue)
{
/* Check the parameters */
assert_param(IS_RTC_PRESCALER(PrescalerValue));
RTC_EnterConfigMode();
/* Set RTC PRESCALER MSB word */
RTC->PRLH = (PrescalerValue & PRLH_MSB_MASK) >> 16;
/* Set RTC PRESCALER LSB word */
RTC->PRLL = (PrescalerValue & RTC_LSB_MASK);
RTC_ExitConfigMode();
}
求助一个RTC的问题,RTC进行初始化的时候先允许配置 然后设置RTC预分频,在预分频函数里执行了RTC_EnterConfigMode();和RTC_ExitConfigMode(); (退出配置模式) 那返回来设置时间的时候不就无法设置了,但是我之后将上述代码里的RTC_EnterConfigMode和RTC_ExitConfigMode(包括预分频函数)都屏蔽掉依然可以重新设置时间,精英版STM32F103ZET6求指导。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
就是原子带的那个RTC的代码。那个设置RTC预分频函数里,先允许,函数结尾时又关闭。然后出来后就是-等待-设置时间,比较纳闷,设置时间之前不需要再允许一下吗?所以我自己就干脆全屏蔽了试了一下
一周热门 更多>