打印
[AT32F403/403A]

PLL 大于72MHz 设定

[复制链接]
3729|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
kiwis66|  楼主 | 2021-11-1 09:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ge, PLL, hz, rc, TE

AT32F403A_407 内置的PLL最高可输出240 MHz时钟,时钟高于72MHz时设定略有不同,须根据输出频率设定PLLRANGE寄存器


#define RCC_CFG_PLLRANGE_GT72MHZ ((uint32_t)0x80000000
例如AT32F403A PLL设定程序范例:(HSE = 8 MHz, PLL = 240 MHz)

RCC->CFG |= (uint32_t)(RCC_CFG_PLLRC_HSE | RCC_CFG_PLLMULT30 | RCC_CFG_PLLRANGE_GT72MHZ);
开启滑顺功能:
RCC_StepModeCmd(ENABLE);
关闭滑顺功能:
RCC_StepModeCmd(DISABLE);
开/关滑顺功能函数定义:
void RCC_StepModeCmd(FunctionalState NewState)
{
assert_param(IS_FUNCTIONAL_STATE(NewState));
if(NewState == ENABLE)
{
RCC->MISC2 |= RCC_MISC2_AUTO_STEP_EN;
}
else
{
RCC->MISC2 &= ~RCC_MISC2_AUTO_STEP_EN;
}
注:PLL 等于72MHz 设定和SXX32F103 是一样
SXX32F103 PLL 设定程序范例:(HSE = 8 MHz, PLL = 72 MHz)
RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);
AT32F403A PLL 设定程序范例:(HSE = 8 MHz, PLL = 72 MHz)
RCC->CFG |= (uint32_t)(RCC_CFG_PLLRC_HSE | RCC_CFG_PLLMULT9);



使用特权

评论回复
沙发
lajfda001| | 2021-11-1 10:36 | 只看该作者
这是不是属于单片机的超频?

使用特权

评论回复
板凳
lajfda001| | 2021-11-1 10:37 | 只看该作者
这是不是属于单片机的超频?

使用特权

评论回复
评论
muyichuan2012 2021-11-1 10:50 回复TA
不是,对于AT32F403A,超过240MHz才算超频。超过72MHz的配置方法按照RM要求或次帖子配置流程即可。 
地板
lajfda002| | 2021-11-1 10:43 | 只看该作者
感谢楼主的分享,学习到了。

使用特权

评论回复
5
lajdfla001| | 2021-11-1 10:57 | 只看该作者
感谢楼主的分享,学习到了,很棒的。

使用特权

评论回复
6
sadicy| | 2021-11-1 13:54 | 只看该作者
感谢分享,学习中`

使用特权

评论回复
7
6552918| | 2021-11-1 16:40 | 只看该作者
移植文档里有相关说明

使用特权

评论回复
8
caigang13| | 2021-11-1 20:44 | 只看该作者
回二楼,这可不是超频啊。

使用特权

评论回复
9
onlycook| | 2021-11-2 15:09 | 只看该作者
学习到了,很棒的。

使用特权

评论回复
10
kiwis66|  楼主 | 2021-11-3 09:31 | 只看该作者
只是看到资料中,这么说了一下,感觉之前没注意过这个,贴出来大家看看

使用特权

评论回复
11
sparrow054| | 2021-11-9 11:20 | 只看该作者
就是配置不同的时钟,可能不一样?

使用特权

评论回复
12
huquanz711| | 2021-11-9 23:14 | 只看该作者
内部RC精度和稳定性有点悬哦。

使用特权

评论回复
13
yangxiaor520| | 2021-11-10 07:55 | 只看该作者
内部RC敢跑到240MHz?

使用特权

评论回复
14
rafd| | 2022-5-28 08:12 | 只看该作者
pdf说的21-60的那一部分哪里找,找遍了,都找不到
#define RCC_CFG_PLLMULT1 ((uint32_t)0x20000000) /*!< PLL input clock * 17 */
#define RCC_CFG_PLLMULT18 ((uint32_t)0x20040000) /*!< PLL input clock * 18 */
#define RCC_CFG_PLLMULT19 ((uint32_t)0x20080000) /*!< PLL input clock * 19 */
#define RCC_CFG_PLLMULT20 ((uint32_t)0x200C0000) /*!< PLL input clock * 20 */

#define RCC_CFG_PLLMULT61 ((uint32_t)0x60300000) /*!< PLL input clock * 61 */
#define RCC_CFG_PLLMULT62 ((uint32_t)0x60340000) /*!< PLL input clock * 62 */
#define RCC_CFG_PLLMULT63 ((uint32_t)0x60380000) /*!< PLL input clock * 63 */
#define RCC_CFG_PLLMULT64 ((uint32_t)0x603C0000) /*!< PLL input clock * 64 */

使用特权

评论回复
15
kiwis66|  楼主 | 2022-6-1 20:03 | 只看该作者
6552918 发表于 2021-11-1 16:40
移植文档里有相关说明

对的,之前没有注意到

使用特权

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

本版积分规则

189

主题

1183

帖子

2

粉丝