[技术问答] HC32L130 RCH时钟频率不准是什么原因

[复制链接]
10991|4
手机看帖
扫描二维码
随时随地手机跟帖
今世无语|  楼主 | 2021-9-16 11:58 | 显示全部楼层 |阅读模式
在调试HC32L130 过程中,发现串口波特率有误差,然后调整RCH时钟到24MHZ, 波特率依然有2.8%左右的误差。通过测试PB00的输出波形,发现输出的RCH频率大约为24.8MHZ。这种问题是什么原因导致的?RCH_CR_TRIM_24M_VAL  (*((volatile uint16_t*) (0x00100C00ul))) 里面的值怎么确定的?我测试了六七个单片机里面的值都是不一样的,感觉这个值应该是出厂调试好的,输出频率应该是精准的。下面是我的时钟初始化函数,是按照demo写的。

//时钟初始化配置
void App_ClkInit(void)
{
    stc_sysctrl_clk_cfg_t stcCfg;
   
    ///< 开启FLASH外设时钟
    Sysctrl_SetPeripheralGate(SysctrlPeripheralFlash, TRUE);
   
    ///<========================== 时钟初始化配置 ===================================
    ///< 因要使用的时钟源HCLK小于24M:此处设置FLASH 读等待周期为0 cycle(默认值也为0 cycle)
    Flash_WaitCycle(FlashWaitCycle0);
   
    ///< 时钟初始化前,优先设置要使用的时钟源:此处设置RCH为4MHz
    Sysctrl_SetRCHTrim(SysctrlRchFreq4MHz);
   
    ///< 选择内部RCH作为HCLK时钟源;
    stcCfg.enClkSrc    = SysctrlClkRCH;
    ///< HCLK SYSCLK/1
    stcCfg.enHClkDiv   = SysctrlHclkDiv1;
    ///< PCLK 为HCLK/1
    stcCfg.enPClkDiv   = SysctrlPclkDiv1;
    ///< 系统时钟初始化
    Sysctrl_ClkInit(&stcCfg);
}


//将时钟从RCH4MHz切换至RCH24MHz,
void App_Rch4MHzTo24MHz(void)
{   
        ///<============== 将时钟从RCH4MHz切换至RCH24MHz ==============================   
    ///< RCH时钟不同频率的切换,需要先将时钟切换到RCL,设置好频率后再切回RCH
    Sysctrl_SetRCLTrim(SysctrlRclFreq32768);
    Sysctrl_ClkSourceEnable(SysctrlClkRCL, TRUE);
    Sysctrl_SysClkSwitch(SysctrlClkRCL);
   
    ///< 加载目标频率的RCH的TRIM值
    Sysctrl_SetRCHTrim(SysctrlRchFreq24MHz);
    ///< 使能RCH(默认打开,此处可不需要再次打开)
    //Sysctrl_ClkSourceEnable(SysctrlClkRCH, TRUE);
    ///< 时钟切换到RCH
    Sysctrl_SysClkSwitch(SysctrlClkRCH);
    ///< 关闭RCL时钟
    Sysctrl_ClkSourceEnable(SysctrlClkRCL, FALSE);
}  

使用特权

评论回复
yelong98| | 2021-9-16 12:51 | 显示全部楼层
放弃吧,确实是那么大偏差。我也试过怎么设置都不行,换外置晶振准的一批

使用特权

评论回复
binoo7| | 2021-9-16 13:29 | 显示全部楼层
内部时钟受温度的影响比较大,所以如果做项目不建议使用内部时钟,最好是可以扩展外部晶振

使用特权

评论回复
martinhu| | 2021-9-16 13:45 | 显示全部楼层
是不是外围电路没搭好,一般常温下误差不会这么大

使用特权

评论回复
yizushijie| | 2021-9-17 09:01 | 显示全部楼层
供电电压是多少?

使用特权

评论回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

我要发帖 我要提问 投诉建议 申请版主

本版热帖

本版活跃用户

优质原创写原创,赢大奖

编辑推荐

  • 1 呐咯密密 得到打赏 ¥310.00
  • 2 qbwww 得到打赏 ¥265.00
  • 3 yanzhengxin1 得到打赏 ¥200.00
  • 4 full_stack 得到打赏 ¥100.00
  • 5 laocuo1142 得到打赏 ¥55.00
  • 6 二哲科技 得到打赏 ¥50.00
  • 7 zhangjiantao 得到打赏 ¥50.00
  • 8 改名了 得到打赏 ¥50.00
  • 9 小叶三千 得到打赏 ¥50.00
  • 10 cjseng 得到打赏 ¥50.00
在线客服 快速回复 返回顶部 返回列表