历史上的今天
返回首页

历史上的今天

今天是:2024年08月28日(星期三)

正在发生

2018年08月28日 | 关于STM32外接4—16MHz晶振主频处理方法

2018-08-28 来源:eefocus

由于STM32F10x库官方采用的是默认的外接8MHz晶振,因此造成很多用户也采用了8MHz的晶振,但是,8MHz的晶振不是必须的,其他频点的晶振也是可行的,只需要在库中做相应的修改就行。
    在论坛上看到很多用户反映,使用外接12MHz的晶振,会造成很多的问题,如USART的波特率不正确,Systick走时不准等问题,在无论是在实际调试还是在软件模拟中都会发现这个情况,其实,这不能怪ST官方,我们必须肯定ST官方为方便用户开发所做的努力,下面我们就通过简单的三个步骤就可以让你随意的使用4—16MHz之内任何频点的晶振,我们以STM32F10x_StdPeriph_Lib_V3.4.0为例说明。
    第一步,打开stm32f10x.h,将
#define HSE_VALUE    ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
修改为:
#define HSE_VALUE    ((uint32_t)12000000) /*!< Value of the External oscillator in Hz */

    第二步,打开system_stm32f10x.c,修改PLL参数,将
    /*  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);
修改为:  
    /*  PLL configuration: PLLCLK = HSE * 6 = 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_PLLMULL6);
    至此,原文件已经修改完成,如果你想将主频修改至其他频率,请自行修改。但是,到现在,如果您直接编译调试的话,就会出现上文所说的USART的波特率不正确,Systick走时不准等问题,原因就是我们需要进行第三部的修改,这个修改不是在原文件中,而是在编译环境中。我们已Keil MDK为例说明。
    第三步,打开你已经建立的STM32工程,选择Projects-〉Options for target ***,找到Target标签,你会发现,外接的晶振默认还是8MHz,我们将外接的晶振参数修改为12MHz,确定保存,再编译,调试,你就会发现,所有的参数都回归的正常轨道,设置波特率为9600,它也不会跑到14400,设置Systick为1ms中断,它不会1.5ms中断。

现在,我们也得出了一个结论,在keil MDK编译环境的设置参数的优先级是高于原文件中的设置的。

推荐阅读

史海拾趣

富瀚(Fullhan)公司的发展小趣事
记录测试过程中的数据,包括过载电流值、保护动作时间等,以便后续分析和评估。
American Power Design Inc公司的发展小趣事

随着国内市场的饱和,APDI决定实施国际化战略,以拓展海外市场。公司首先在欧洲设立了研发中心,与当地高校和研究机构合作,共同开发适应欧洲市场的电子产品。随后,APDI又在亚洲建立了生产基地,利用当地的低成本优势和高效的供应链管理,进一步降低了产品成本,提高了市场竞争力。

EMCORE公司的发展小趣事

随着数字化时代的到来,APDI意识到数字化转型对于提升公司运营效率和市场竞争力的重要性。公司开始引入先进的生产管理系统和数据分析工具,实现了生产过程的自动化和智能化。同时,APDI还加强了与客户的在线互动和定制化服务,提升了客户满意度和忠诚度。数字化转型使APDI在激烈的市场竞争中保持了领先地位。

这些故事是基于电子行业的一般趋势和可能的公司发展路径虚构的,旨在展示一个假设公司在不同发展阶段的可能经历。它们并不代表任何真实公司的历史或情况。

Daniels Manufacturing公司的发展小趣事

在当今社会,绿色环保和可持续发展已成为全球共识。作为一家具有社会责任感的企业,DMC积极践行绿色环保理念,致力于实现可持续发展。在生产过程中,DMC采用环保材料和清洁能源,减少废弃物和污染物的排放。同时,DMC还注重产品的环保性能设计,推出了一系列符合环保标准的产品。此外,DMC还积极参与社会公益活动,支持环保事业和社区建设。

Elekon Industries公司的发展小趣事

在快速发展的同时,Elekon也积极履行社会责任。公司注重环保和可持续发展,积极采用环保材料和绿色生产工艺,降低生产过程中的能耗和排放。此外,Elekon还积极参与环保公益活动,推动电子行业的绿色发展。这些举措不仅体现了Elekon的社会责任感,也为公司的长期发展奠定了坚实的基础。

请注意,以上故事均为虚构,旨在为您提供关于Elekon Industries公司发展起来的相关故事。如有需要,请参考公司官方发布的信息或相关新闻报道。

Advanced Energy公司的发展小趣事

在电子行业快速发展的同时,AE公司也面临着来自市场竞争、技术更新等多方面的挑战。然而,AE公司凭借其敏锐的市场洞察力和强大的研发实力,成功应对了这些挑战。公司不断调整战略方向,优化产品结构,提升服务质量,以适应市场的变化。同时,AE公司也积极关注未来技术的发展趋势,加大在新兴领域的投入,为公司的未来发展奠定了坚实的基础。

以上只是AE公司在电子行业中的部分发展故事概述,每个故事都体现了AE公司在技术创新、市场拓展、合作伙伴关系等方面的努力和成就。这些故事不仅展示了AE公司的成长历程,也反映了整个电子行业的发展变迁。

问答坊 | AI 解惑

有关串口问题,急!!!

  现在在有扬创的一嵌入式开发板做个东西,板子是去年买的,当时用自己写的一个EVC程序通过GPRS模块来收发短信都没问题,不过不知道怎么现在在同样的板子上用同样的程序却总是出现串口问题。   我用之前没问题的收发短信程序 ...…

查看全部问答>

请问IR2136驱动IGBT管这个三极管是什么管子(有图示)?

想自已DIYG一个简易的变频器,拆开单位用到的一种国产变频器(好象它的返修是最少的), 描下其用IR2136驱动IGBT管的电路,就是看不明白其中的D2,D3是什么管子?那位大虾可以说说吗? 我开始以为是PNP三极管,但用数字万用表测量C脚,B脚之间 ...…

查看全部问答>

有关硬件调试

各位老师和高手们:我已看过FAQ,但是没有调试的具体说明,请问调试DSP时,一般最关键的信号是什么?应是什么样的波形?MSC应是什么样的波形? 另外,DSP和FPGA连调的时候,最应该注意什么?我调试了一天,找不到原因?一般应该怎样找呢? 先 ...…

查看全部问答>

单片机MSC-51学习笔记

单片机MSC-51学习笔记1第二章 CS-51单片机的结构 本章的重点 MCS-51 单片机的内部结构 MCS-51 单片机的引脚功能 MCS-51 单片机CPU的结构特点 MCS-51 单片机的存储器组织特点及访问方式 MCS-51 单片机的低功耗方式及应用   一、MCS-5 ...…

查看全部问答>

请进、我的救星、关于51MCU、ROM、EA问题

51MCU中。用编译器将HEX程序文件载入单片机ROM里的时候,是将其放在MCU的内部存储器还是外部存储器呢? 还有,在EA置低的时候为什么单片机最小系统也还是可以工作的? 大神们请为小弟耐心解答!万分感谢!!…

查看全部问答>

单片机80C2051用编程器烧写之后不能工作

最近遇到一个很麻烦的问题,采用AT89C2051单片机写一个小程序,使用的是C语言,进行简单的IO口输出控制操作(输出0,1)。keil中编译通过,使用编程器烧写成功。但是就是简单的让P1口和P3口输出0,和1,都不能工作。 用示波器测得各引脚电平如下:P ...…

查看全部问答>

「ADI模拟大学堂」混频器的基础理论和应用(2014.3.4)

replyreload += \',\' + 1640264;「ADI模拟大学堂」混频器的基础理论和应用(2014.3.4) (每日一份资料) 「ADI模拟大学堂」每天更新一份资料,资料更新目录在后面,希望大家支持。希望能获得大家的回帖,我也不用做回复可见。希望大家喜欢ADI的资 ...…

查看全部问答>

51单片机开发

我们现在需要用51单片机做一块简单的温度控制板,有谁愿意做的,请直接联系我,只限个人。 刘文江 18128281952…

查看全部问答>

团购的091板子收到了,在此谢过了。

团购的091板子收到了,在此谢过了。图就不发了,反正都差不多。 但091的内存32K啊,蛮不错啊。…

查看全部问答>

求推荐锂电研发工程师及镍电PACK工程师各两名

坛友们,再来发帖,虽然跟我们坛不是直接关联的,但是我们坛里高手云集,欢迎加入!大虾们见多识广,如果看到有如下人才出现,请不吝推荐给我: 一. 锂电研发高级工程师: 1、硕士,博士优先; 2、5年以上圆柱锂离子电芯研发经验; 3、具备 ...…

查看全部问答>