历史上的今天

今天是:2024年09月01日(星期日)

正在发生

2018年09月01日 | stm32f105外部晶振由8MHz调整到12MHz库的修改

发布者:as233632621 来源: eefocus关键字:stm32f105  外部晶振 手机看文章 扫描二维码
随时随地手机看文章

1、首先是stm32f10x.h中的HSE_VALUE


#if !defined  HSE_VALUE

 #ifdef STM32F10X_CL

 #define HSE_VALUE    ((uint32_t)12000000)//这里修改为12MHz

//  #define HSE_VALUE    ((uint32_t)25000000) /*!< Value of the External oscillator in Hz */注释掉

 #else 

  #define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */

 #endif /* STM32F10X_CL */

#endif /* HSE_VALUE */

2、修改分频/倍频系数使系统时钟变为72MHz


在system_stm32f10x.c的void SystemInit (void)函数下有一个SetSysClock()继续找static void SetSysClock(void)下的SetSysClockTo72();修改后如下一段代码:

其中被注释掉的部分为原来的代码。

 

    /* Configure PLLs ------------------------------------------------------*/

    /* PLL2 configuration: PLL2CLK = (HSE / 5) * 8 = 40 MHz */

    /* PREDIV1 configuration: PREDIV1CLK = PLL2 / 5 = 8 MHz */

       

    RCC->CFGR2 &= (uint32_t)~(RCC_CFGR2_PREDIV2 | RCC_CFGR2_PLL2MUL |

                              RCC_CFGR2_PREDIV1 | RCC_CFGR2_PREDIV1SRC);

//    RCC->CFGR2 |= (uint32_t)(RCC_CFGR2_PREDIV2_DIV5 | RCC_CFGR2_PLL2MUL8 |

//                             RCC_CFGR2_PREDIV1SRC_PLL2 | RCC_CFGR2_PREDIV1_DIV5);

  

//HSE =  12 PLL2CLK = (HSE / 3) * 10 = 40 MHz

RCC->CFGR2 |= (uint32_t)(RCC_CFGR2_PREDIV2_DIV3 | RCC_CFGR2_PLL2MUL10 |

RCC_CFGR2_PREDIV1SRC_PLL2 | RCC_CFGR2_PREDIV1_DIV5);

    /* Enable PLL2 */

    RCC->CR |= RCC_CR_PLL2ON;

    /* Wait till PLL2 is ready */

    while((RCC->CR & RCC_CR_PLL2RDY) == 0)

    {

    }

    

//   

//    /* PLL configuration: PLLCLK = PREDIV1 * 9 = 72 MHz */ 

//    RCC->CFGR &= (uint32_t)~(RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLSRC | RCC_CFGR_PLLMULL);

//    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLSRC_PREDIV1 | 

//                            RCC_CFGR_PLLMULL9); 

 

RCC->CFGR &= (uint32_t)~(RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLSRC | RCC_CFGR_PLLMULL);

RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLSRC_PREDIV1 | 

RCC_CFGR_PLLMULL6); 

#else    

//    /*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz */

//    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |

//                                        RCC_CFGR_PLLMULL));

//    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);

    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |

                                        RCC_CFGR_PLLMULL));

    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL6);


关键字:stm32f105  外部晶振 引用地址:stm32f105外部晶振由8MHz调整到12MHz库的修改

上一篇:STM32系统时钟设置,采用外部有源晶振相关配置问题
下一篇:STM32工程不同系列芯片间的移植

推荐阅读

LG宣布了全新的显示器产品线UltraGear,34GK950G将担纲首发。 此前的UltraFine强调画质,UltraWide是带鱼屏,此次的UltraGear则专注于电竞游戏玩家作为目标群体。 这款显示器拥有一块34英寸、3440x1440分辨率的曲面屏,21:9宽屏设计,nano IPS面板,覆盖98% DCI-P3色域和135% sRGB色域,支持NVIDIA G-Sync,本地刷新率100Hz,可超频到120Hz。 ...
互联网由PC互联网发展到移动互联网,再到物联网,本身就是一个不进化的过程,无论传统IT通信厂商华为中兴,还是传统互联网巨头BATJ,或是移动互联网新贵小米及TMD等,都不会也不能错过物联网;根据Gartner的测算,预计到2020年全球物联网设备数量将达到204亿,达到人口的3倍以上;据IDC数据显示,2020年全球将超过250亿台设备联网,同时在网用户将达44亿人...
集微网消息,天线双雄,在2020年上半年财报出炉之际,再次站上了PK台。在疫情影响之下,两家公司此前的一季报业绩,均出现不同程度的下降。此次,半年度业绩出炉,两大厂商的营收和净利润水平的差距不断拉大。从集微网此前的报道来看,两大厂商在天线领域的战略布局不同,加之对原有盈利业务的深耕或分拆,对两大厂商的股价和业绩带来了较大的波动。业绩分...
在STM32中执行中断主要分三部分:1.配置NVIC_Config()函数2.配置EXTI_Config()函数3.编写中断服务函数(注:本文章所用代码为中断按键代码,实现了按键进入中断从而控制LED亮灭)配置NVIC_Config()函数NVIC 是嵌套向量中断控制器,控制着整个芯片中断相关的功能,它跟内核紧密耦合,是内核里面的一个外设。NVIC_Config()函数代码如下:static void NVIC...

史海拾趣

问答坊 | AI 解惑

Multisim2001电子教程

下载吧。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。…

查看全部问答∨

求助:230MHz无线发射与接收机调试!(另请高手设计一个VOC电路)重酬

求助:230MHz无线发射与接收机调试!重酬!制作230MHz无线发射机与接收机过程中(发射机功率为1W与10W,接收机采用二次变频,中频用3361,差频为21.4MHz,本振采用VOC+PLL 与培频二种机器),现在调试上碰到问题,希望有高手相助!或者以后可以长时 ...…

查看全部问答∨

TI DSP .CMD 文件的编写

CMD 它是用来分配rom和ram空间用的,告诉链接程序怎样计算地址和分配空间…… TI DSP .CMD 文件的编写 CMD 它是用来分配rom和ram空间用的,告诉链接程序怎样计算地址和分配空间. 所以不同的芯片就有不同大小的rom和ram.放用户程序的地方也不尽相 ...…

查看全部问答∨

一个关于短信的问题

有谁有WM6.0中有关短信的总体结构,包括从上从的APP到下面的RIL driver的资料(最好是双模的)。 App主要做了一些什么事,RIL driver做了一些什么事。 我主要是想对SMS有个大体的了解,然后一些细节的东西在自己看。 谢谢!…

查看全部问答∨

收集电子技术方面的网站,有类似eeworld的最好

谢谢各位帮忙啊,我想学电子技术啊…

查看全部问答∨

关于ZwCreateSection返回值

拦截ZwCreateSection 屏蔽某个进程的创建,NTSTATUS 返回哪个值不会弹出消息 如果返回 STATUS_ACCESS_DENIED, 会弹出“不是有效程序“的信息,返回哪个值 才不会弹出消息又能屏蔽进程的创建?…

查看全部问答∨

STTT系列热电偶温度传感器

STTT系列热电偶温度传感器   STTT系列热电偶温度传感器采用不锈钢外壳封装,内部填充导热材料和密封材料灌封而成,尺寸小巧,适用于仪器仪表,精密恒温设备等温度的测量。   综述   温度是表征物体冷热程度的物理量。温度只能通过物体 ...…

查看全部问答∨

LM3S的SPI,用SPI读写设置,读不到数据啊!

LM3S的SPI,用SPI读写TC72一直都不到数据,读时,在主模式下SCK有波形吗?设置如下。     // Enables a peripheral SSI0     SysCtlPeripheralEnable(SYSCTL_PERIPH_SSI0);  &nb ...…

查看全部问答∨

基于2400系列数字源表构建电阻网络测试系统

电阻网络生产测试的目的是在生产的各个阶段尽可能快速地检验这些器件的性能,以及它们最终的封装形式。这些测试必须可靠以确保所有装箱的产品都满足制造规范。 通常情况下,我们需要对网络中的每个单元进行电阻测量。电阻测量是通过加载恒定电流 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved