你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

查看: 3359|回复: 13

[STM32L476] 【NUCLEO-L476RG开发】外部高速时钟HSE开启

[复制链接]

35

主题

423

回帖

93

蝴蝶豆

版主

最后登录
2020-9-9
发表于 2015-10-29 16:43:26 | 显示全部楼层 |阅读模式
       进来论坛了,到处都是看到大家为了抢板子赚ST币疯狂刷评论,好吧,小弟也有幸抢到一个板子,不过,做技术的进来看到论坛这么对的水帖子,未免觉得有几分失望。L4玩得也差不多了,本来也想玩玩他的低功耗和LCD驱动,再移植操作系统进去的,不过算了,毕竟没有什么意义!小弟的板子已经送给了小伙伴了。今天分享最后一个帖子后也算是回报社区送我L4板子玩,虽然技术含量不高。
       很多人接触这些Nucleo估计都是用的内部时钟来玩的,但是我发现L4的MSI并不好用,可能是我设置的不好吧,用的也是HAL提供的Demo配置,
波特率设置115200总会出现乱码,毕竟自己用惯了外部时钟,所以就焊接一个16Mhz的晶振上去了,用外部晶振的时候,记得还要焊接上两个短路电阻和晶振
的起振电容,22p就行了,比较通用。
QQ截图20151029163528.jpg

关于代码配置:
首先在stm32l4xx_conf.h中的HSE_VALUE改为16 000 000,
然后下面是正式的代码配置:
  1. RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
  2.   RCC_OscInitTypeDef RCC_OscInitStruct = {0};

  3.   /* MSI is enabled after System reset, activate PLL with MSI as source */
  4.   RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
  5.   RCC_OscInitStruct.HSEState = RCC_HSE_ON;
  6.   //RCC_OscInitStruct.MSIClockRange = RCC_MSIRANGE_6;
  7.   //RCC_OscInitStruct.MSICalibrationValue = RCC_MSICALIBRATION_DEFAULT;
  8.   RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
  9.   RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
  10.   RCC_OscInitStruct.PLL.PLLM = 1;
  11.   RCC_OscInitStruct.PLL.PLLN = 10;
  12.   RCC_OscInitStruct.PLL.PLLP = 7;
  13.   RCC_OscInitStruct.PLL.PLLR = 2;
  14.   RCC_OscInitStruct.PLL.PLLQ = 2;
  15.   if(HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
  16.   {
  17.     /* Initialization Error */
  18.     while(1);
  19.   }

  20.   /* Select PLL as system clock source and configure the HCLK, PCLK1 and PCLK2
  21.      clocks dividers */
  22.   RCC_ClkInitStruct.ClockType = (RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_HCLK
  23.                                                                   | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2);
  24.   RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK;
  25.   RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1;
  26.   RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1;
  27.   RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
  28.   if(HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_4) != HAL_OK)
  29.   {
  30.     /* Initialization Error */
  31.     while(1);
  32.   }
复制代码
开启了PLL,系统时钟80Mhz,这样开启USART轻松上115200,当然换成HSI也可以,楼主都尝试过,照葫芦画瓢就可以了。

评分

参与人数 1ST金币 +10 收起 理由
沐紫 + 10

查看全部评分

<
回复

使用道具 举报

4

主题

65

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-4-1
发表于 2015-10-29 16:53:53 | 显示全部楼层
顶一下
回复 支持 反对

使用道具 举报

33

主题

1243

回帖

0

蝴蝶豆

论坛元老

最后登录
2019-3-9
发表于 2015-10-29 17:06:24 | 显示全部楼层
不用焊晶振一样用HSE
回复 支持 反对

使用道具 举报

62

主题

524

回帖

0

蝴蝶豆

高级会员

最后登录
2018-8-20
发表于 2015-10-29 17:15:26 | 显示全部楼层
看看
回复 支持 反对

使用道具 举报

37

主题

1084

回帖

0

蝴蝶豆

论坛元老

最后登录
2020-7-22
发表于 2015-10-29 19:03:36 | 显示全部楼层
                    谢谢分享
回复 支持 反对

使用道具 举报

1

主题

629

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-3-7
发表于 2015-10-29 20:11:10 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

7

主题

912

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-7-4
发表于 2015-10-29 21:04:13 | 显示全部楼层
谢谢分享
stmcu.org.png
回复 支持 反对

使用道具 举报

1

主题

67

回帖

0

蝴蝶豆

初级会员

最后登录
2015-11-25
发表于 2015-10-29 23:25:33 | 显示全部楼层
在MX设置一下就好
回复 支持 反对

使用道具 举报

11

主题

1139

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-7-10
发表于 2015-10-30 00:11:36 | 显示全部楼层
谢谢分享
回复 支持 反对

使用道具 举报

8

主题

380

回帖

0

蝴蝶豆

金牌会员

最后登录
2020-11-26
发表于 2015-10-30 08:20:02 | 显示全部楼层
外部的比较准一些。
回复 支持 反对

使用道具 举报

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版