[技术问答] HC32L196调整主频为何影响ddl.c中的delay1ms()?

[复制链接]
2395|13
 楼主| junzheng 发表于 2022-8-19 18:50 | 显示全部楼层 |阅读模式
不进行主频设置时,ddl.c中的delay1ms()函数的延迟基本正常;
调整主频为App_SystemClkInit_RCH(SysctrlRchFreq8MHz)后,delay1ms()函数的延迟时间变短了;
不想修改ddl.c中的函数,哪位大侠有好办法?
godlovedeath 发表于 2022-8-20 22:45 | 显示全部楼层
调整之后要调用SystemCoreClockUpdate更新SystemCoreClock
wubangmi 发表于 2022-8-21 15:57 | 显示全部楼层
你按照正常流程调用的库函数的话,就不会有这个问题。
如果是你自己写的一些函数,那应该就是少了楼上说的那个步骤
 楼主| junzheng 发表于 2022-8-21 20:30 | 显示全部楼层
godlovedeath 发表于 2022-8-20 22:45
调整之后要调用SystemCoreClockUpdate更新SystemCoreClock

谢谢!我查到了,driver里提供的SystemCoreClock是4MHz,修改后就好了。
tpgf 发表于 2022-9-8 13:27 | 显示全部楼层
就是紧跟一句更新语句就可以是吗
keaibukelian 发表于 2022-9-8 13:42 | 显示全部楼层
调用的库函数的话,不存在这个问题
labasi 发表于 2022-9-8 14:53 | 显示全部楼层
楼主是自己写的函数吧
paotangsan 发表于 2022-9-8 15:01 | 显示全部楼层
库函数会实时更新主频吗
renzheshengui 发表于 2022-9-8 15:15 | 显示全部楼层
delay1ms()这个函数内部是怎么处理的 ?
wakayi 发表于 2022-9-8 15:54 | 显示全部楼层
需要手动更新一下更新SystemCoreClock
 楼主| junzheng 发表于 2022-9-9 19:40 | 显示全部楼层
tpgf 发表于 2022-9-8 13:27
就是紧跟一句更新语句就可以是吗

在这里:

在主函数里直接
SystemCoreClock = 8000000;

LinkMe 发表于 2022-9-13 15:18 | 显示全部楼层
应该有宏定义可以修改。
Bowclad 发表于 2022-9-16 19:16 | 显示全部楼层
这是自己写的函数吗?
 楼主| junzheng 发表于 2022-9-30 14:22 | 显示全部楼层
Bowclad 发表于 2022-9-16 19:16
这是自己写的函数吗?

不是自己写的函数,驱动库自带的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

23

主题

79

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部