久芯网

STM32L151RD SystemClock_Config()

avatar 望柳村 提问时间: 2023-08-15 13:58:57 / 未解决

晶振怎么一直运行不起来,求解答!!

RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;

if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK) { Error_Handler(); }

程序死在了这里,第一次接触这个芯片,不知道怎么回事。


如需获得 STM32L151RD 等器件的更多信息,请点击链接或 点击此处 联系在线客服!

4个回答
  • avatar butterflyspring
    回答时间: 2023-08-15 14:30:49

    官方的软件库中有很多现成的例程,或者CUBEMX 生成一个仅仅启动外部晶振的代码跑一个试试。 如果不行的话,多半是晶体的电路匹配问题。如果行的话,那就参考或者照搬这段代码。

  • avatar 望柳村
    回答时间: 2023-08-15 14:50:35
    butterflyspring 发表于 2021-12-9 10:43
    官方的软件库中有很多现成的例程,或者CUBEMX 生成一个仅仅启动外部晶振的代码跑一个试试。 如果不行的话, ...

    感谢你的回答,我使用的是 8M 和 32.768 两个晶振。起振电容使用的22pF。这个有问题吗

  • avatar xmshao
    回答时间: 2023-08-15 15:18:36

    建议你分步来。先所以内部HSI进行配置时钟,让芯片跑起来,排除HSE电路 其它方面的问题。然后,再将时钟源切换到外部HSE,看看能否正常工作,有问题就调整它直到OK.关于那两个负载电容,厂家也是有推荐值。同时,ST有篇应用笔记AN2867 STM8/STM32振荡电路设计指南可以参考。还有,代码配置尽量使用CubeMx完成。

  • avatar xmshao
    回答时间: 2023-08-15 15:41:40

    AN2867 手册关于如何估算和配置小电容值有较为详细的介绍。

会员中心 微信客服
客服
回到顶部