sapple 发表于 2021-8-21 15:35:27

【时钟RCHF】8MHz 的RCHF改成16MHz不成功的问题

我的软件一上来就修改RCHF,但是单步调试切换晶振的时候,对应RCHFCR寄存器没变化,请教一下这是为啥
void main(void)
{
      InitIOPorts();                        // 初始化IO口
      RCC->PCLKCR1|=BIT2;                // 打开RTC的时钟
      __enable_irq();
      // 设置时钟为16M,打开32K晶振
      RCC->RCHFCR=0x00010001;                // 8MHz切换成16MHz
      RCC->RCHFTR=(RC_CLOCK_16M)&0x7F;      // 调用调校参数
      RCC->XTLFCR=0x0500;                // 打开32K晶振,给systick使用:(
      IWDT->CR=4;                //2 秒超时
...

sapple 发表于 2021-8-21 15:41:22

资料上对于FSEL寄存器的描述是:RCHF 频率选择寄存器 (RCHF 187lock187ncy Select)。括号里的意思是什么?谁能参透复旦微的意思?

顾博文 发表于 2021-8-23 08:28:37

sapple 发表于 2021-8-21 15:41
资料上对于FSEL寄存器的描述是:RCHF 频率选择寄存器 (RCHF 187lock187ncy Select)。括号里的意思是什么? ...

如果想要修改主频,我们是不建议修改系统初始化函数的。也不建议上电立即把8m修改掉。请到用户初始化里修改,调用系统提供的初始化rchf修改函数就好,好像在user_init.c里有一个clockinit函数。

pkeuus 发表于 2022-1-22 20:19:38

如何修改XTLF为外部32.768时钟,真是一个例程也没有啊
页: [1]
查看完整版本: 【时钟RCHF】8MHz 的RCHF改成16MHz不成功的问题