打印
[STM32F1]

STM32F103RC芯片的RTC的PRL寄存器的值为什么无法显示

[复制链接]
204|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2023-10-11 09:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
RTC_PRL寄存器的值为什么在Keil的调试中无法看到这个值的数值?一直显示是0,RCC_CNT的计数和中断都正常。

这是我的RTC的配置代码:

void RTC_Configuration(void)
{
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
  PWR_BackupAccessCmd(ENABLE);

  BKP_DeInit();
  RCC_LSEConfig(RCC_LSE_ON);
  while(RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET);

  RCC_RTCCLKConfig(RCC_RTCCLKSource_LSE);
  RCC_RTCCLKCmd(ENABLE);

  RTC_WaitForSynchro();

  RTC_WaitForLastTask();
  RTC_SetPrescaler(32767);
  RTC_WaitForLastTask();

  RTC_ITConfig(RTC_IT_SEC,ENABLE);
  RTC_WaitForLastTask();

}
NVIC的配置:

void NVIC_RTC_Configuration(void)
{
  NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);
  NVIC_InitStructure.NVIC_IRQChannel = RTC_IRQn;
  NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
  NVIC_InitStructure.NVIC_IRQChannelSubPriority = 1;
  NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
  NVIC_Init(&NVIC_InitStructure);
}
中断服务函数:

void RTC_IRQHandler(void)
{
  if(RTC_GetITStatus(RTC_IT_SEC) != RESET)  
  {
    RTC_ClearITPendingBit(RTC_IT_SEC);
  }
}

使用特权

评论回复
沙发
Stahan| | 2023-10-11 19:40 | 只看该作者
这个寄存器不能读吧

使用特权

评论回复
板凳
两只袜子|  楼主 | 2023-10-13 15:51 | 只看该作者

使用特权

评论回复
地板
jcky001| | 2023-10-13 15:52 | 只看该作者
您的程序可能存在错误,导致无法正确地访问PRL寄存器。

使用特权

评论回复
5
cr315| | 2023-10-13 15:54 | 只看该作者
寄存器访问权限问题吧

使用特权

评论回复
6
elephant00| | 2023-10-13 16:38 | 只看该作者
您的程序可能存在错误,导致无法正确地访问PRL寄存器。

使用特权

评论回复
7
MessageRing| | 2023-10-13 21:41 | 只看该作者
应该是不允许读

使用特权

评论回复
8
Mowergy| | 2023-10-17 10:40 | 只看该作者
程序可能存在错误,导致无法正确地访问PRL寄存器。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2039

主题

7368

帖子

10

粉丝