历史上的今天
返回首页

历史上的今天

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

正在发生

2020年09月23日 | stm32F4各个库文件的作用分析

2020-09-23 来源:eefocus

system_stm32f4xx.c:This file contains the system clock configuration for STM32F4xx devices.


  1 /**

  2   ******************************************************************************

  3   * @file    system_stm32f4xx.c

  4   * @author  MCD Application Team

  5   * @version V1.4.0

  6   * @date    04-August-2014

  7   * @brief   CMSIS Cortex-M4 Device Peripheral Access Layer System Source File.

  8   *          This file contains the system clock configuration for STM32F4xx devices.

  9   *             

 10   * 1.  This file provides two functions and one global variable to be called from 

 11   *     user application:

 12   *      - SystemInit(): Setups the system clock (System clock source, PLL Multiplier

 13   *                      and Divider factors, AHB/APBx prescalers and Flash settings),

 14   *                      depending on the configuration made in the clock xls tool. 

 15   *                      This function is called at startup just after reset and 

 16   *                      before branch to main program. This call is made inside

 17   *                      the "startup_stm32f4xx.s" file.

 18   *

 19   *      - SystemCoreClock variable: Contains the core clock (HCLK), it can be used

 20   *                                  by the user application to setup the SysTick 

 21   *                                  timer or configure other parameters.

 22   *                                     

 23   *      - SystemCoreClockUpdate(): Updates the variable SystemCoreClock and must

 24   *                                 be called whenever the core clock is changed

 25   *                                 during program execution.

 26   *

 27   * 2. After each device reset the HSI (16 MHz) is used as system clock source.

 28   *    Then SystemInit() function is called, in "startup_stm32f4xx.s" file, to

 29   *    configure the system clock before to branch to main program.

 30   *

 31   * 3. If the system clock source selected by user fails to startup, the SystemInit()

 32   *    function will do nothing and HSI still used as system clock source. User can 

 33   *    add some code to deal with this issue inside the SetSysClock() function.

 34   *

 35   * 4. The default value of HSE crystal is set to 25MHz, refer to "HSE_VALUE" define

 36   *    in "stm32f4xx.h" file. When HSE is used as system clock source, directly or

 37   *    through PLL, and you are using different crystal you have to adapt the HSE

 38   *    value to your own configuration.

 39   *

 40   * 5. This file configures the system clock as follows:

 41   *=============================================================================

 42   *=============================================================================

 43   *                    Supported STM32F40xxx/41xxx devices

 44   *-----------------------------------------------------------------------------

 45   *        System Clock source                    | PLL (HSE)

 46   *-----------------------------------------------------------------------------

 47   *        SYSCLK(Hz)                             | 168000000

 48   *-----------------------------------------------------------------------------

 49   *        HCLK(Hz)                               | 168000000

 50   *-----------------------------------------------------------------------------

 51   *        AHB Prescaler                          | 1

 52   *-----------------------------------------------------------------------------

 53   *        APB1 Prescaler                         | 4

 54   *-----------------------------------------------------------------------------

 55   *        APB2 Prescaler                         | 2

 56   *-----------------------------------------------------------------------------

 57   *        HSE Frequency(Hz)                      | 25000000

 58   *-----------------------------------------------------------------------------

 59   *        PLL_M                                  | 25

 60   *-----------------------------------------------------------------------------

 61   *        PLL_N                                  | 336

 62   *-----------------------------------------------------------------------------

 63   *        PLL_P                                  | 2

 64   *-----------------------------------------------------------------------------

 65   *        PLL_Q                                  | 7

 66   *-----------------------------------------------------------------------------

 67   *        PLLI2S_N                               | NA

 68   *-----------------------------------------------------------------------------

 69   *        PLLI2S_R                               | NA

 70   *-----------------------------------------------------------------------------

 71   *        I2S input clock                        | NA

 72   *-----------------------------------------------------------------------------

 73   *        VDD(V)                                 | 3.3

 74   *-----------------------------------------------------------------------------

 75   *        Main regulator output voltage          | Scale1 mode

 76   *-----------------------------------------------------------------------------

 77   *        Flash Latency(WS)                      | 5

 78   *-----------------------------------------------------------------------------

 79   *        Prefetch Buffer                        | ON

 80   *-----------------------------------------------------------------------------

 81   *        Instruction cache                      | ON

 82   *-----------------------------------------------------------------------------

 83   *        Data cache                             | ON

 84   *-----------------------------------------------------------------------------

 85   *        Require 48MHz for USB OTG FS,          | Disabled

 86   *        SDIO and RNG clock                     |

推荐阅读

史海拾趣

BENCENT公司的发展小趣事

BENCENT公司在成立之初,面临着资金短缺、技术瓶颈和市场认知度低等多重挑战。创始人带领团队夜以继日地研发,通过不断尝试和改进,终于成功开发出了一款具有竞争力的电子产品。这款产品凭借其高性能和创新性,在市场上获得了初步认可,为公司的后续发展奠定了基础。

兆易创新(GigaDevice)公司的发展小趣事

随着市场的不断变化和竞争的加剧,BENCENT公司意识到只有不断创新才能在行业中立足。公司加大了研发投入,引进了一批高素质的技术人才,并与其他科研机构展开合作。通过一系列的技术创新,公司成功推出了一系列具有自主知识产权的电子产品,进一步提升了市场竞争力。

CommScope Inc公司的发展小趣事

CommScope Inc公司的前身可以追溯到1953年,在北卡罗莱纳州的山核桃成立的高级电缆公司。这个公司以其卓越的电话线产品赢得了市场的认可。到了1964年,康普的产品线开始使用高级电缆和同轴电缆,标志着公司在电缆技术领域的突破。随着技术的不断革新,1966年,康普在卡托巴县的福特社区开始数控制造,进一步提升了生产效率。1976年,大陆高级康普部门被Frank Drendel领导的投资者集团收购,这为公司日后的发展奠定了坚实的基础。

Corsair Memory Inc公司的发展小趣事

随着公司的发展,Corsair Memory Inc不仅局限于内存产品的生产,还积极扩大业务范围。其中,收购SCUF Gaming是Corsair在扩展业务版图上的重要一步。这一收购使Corsair得以进入游戏外设市场,进一步丰富了其产品线,也为其带来了更多的增长机会。

Broadband公司的发展小趣事

随着公司的发展,Corsair Memory Inc不仅局限于内存产品的生产,还积极扩大业务范围。其中,收购SCUF Gaming是Corsair在扩展业务版图上的重要一步。这一收购使Corsair得以进入游戏外设市场,进一步丰富了其产品线,也为其带来了更多的增长机会。

歌普(GEPU)公司的发展小趣事

Corsair Memory Inc公司的成功不仅在于其产品的创新,更在于其与全球知名电脑厂商的合作。多家世界级的OEM合作伙伴选择Corsair作为其内存供应商,这不仅提升了Corsair的品牌影响力,也为其带来了稳定的订单和市场份额。这种合作关系的建立,是Corsair在电子行业中持续发展的重要支撑。

问答坊 | AI 解惑

STM32价格这么恐怖?

网上看到的,不知道是不是真的,各位买的时候都多少钱啊? http://china.rs-online.com,这家公司网上查询的价格 …

查看全部问答>

日立、松下、东芝自主开发毫米波通信芯片

“我们希望尽快摆脱依赖特定半导体厂商的状况”(日立制作所技术人员)。   日本国内厂商开发毫米波通信IC的积极性正与日俱增。就目前所知,日立制作所、松下、东芝三家公司都在独立开发60GHz频带收发IC(RF收发IC)(注1)。各公司都希望为数 ...…

查看全部问答>

2440 读 温度芯片,总是无法触发中断,请教有什么方法呀?

BSP包里通过应用层调用IIC文件夹不能正常工作,只好转入到bootloader层去做温度检测了,可是无论如何也不能触发中断,有经验的请指教,先谢谢了。…

查看全部问答>

EVC 关于触屏显示的问题,急啊,解决现给100分

为什么我的EVC程序在X86上跑没问题!但同样的程序在ARM上跑,菜单触摸屏有用,但在窗口上触屏后没反映,是什么原因啊?????请高手指教!…

查看全部问答>

把adoce31.dll拷贝到Windows, CreateProcess(_T("\RegSvrCe" ,_T("/s \Windows\\adoce31.d

把adoce31.dll拷贝到Windows, CreateProcess(_T(\"\\RegSvrCe\" ,_T(\"/s \\Windows\\\\adoce31.dll\" ,NULL .... 这个在wince.net 4.2以及wm5.0上面还不能正常使用 这个问题如何解决. …

查看全部问答>

手里有个模块wavecom的wismo2c,不能上GPRS,怎么处理下可实现上网

据说要做下软件升级,怎么做啊。请高人指点。 查的资料说这个模块刚上市时不支持GPRS,要支持的话需要软件升级,升级软件到哪里下?…

查看全部问答>

大家帮忙看下编译问题,麻烦了!

  我以前一直用9.1,感觉很不好用,今天换成了9.0,可是编译老有错误,错误如下: Internal Error: Sub-system: AMERGE, File: /quartus/atm/amerge/amerge_kpt_op.cpp, Line: 220cmp_merge_kpt_dbStack Trace:0x3D9B7   : amerge_ ...…

查看全部问答>

TI教堂 我无法进入了

TI教堂 我无法进入了 我点击进入学习,结果弹出这个窗口见附件…

查看全部问答>

【连载】【ALIENTEK 战舰STM32开发板】STM32开发指南--第二十三章 内部温度传感器实验

第二十三章 内部温度传感器实验         本章我们将向大家介绍STM32的内部温度传感器。在本章中,我们将使用STM32的内部温度传感器来读取温度值,并在TFTLCD模块上显示出来。本章分为如下几个部分:23.1 STM32 内部 ...…

查看全部问答>

msp430f169 ADC引脚电压

我用的MSP430F169,ADC引脚接地测回的数据也是2000多,测量AD引脚果然有电压,不知道是什么情况,求助啊!!!…

查看全部问答>