zoukankan      html  css  js  c++  java
  • STM32系统时钟为什么没有定义呢

    对于使用3.5版本库开发的STM32学习者 有时候不清楚为什么没有时钟定义

    那么我们就简单的讲解下吧:

    1,函数从启动文件开始运行(汇编文件)

    2,若是hd.s 请看151行LDR     R0, =SystemInit    

    3,我们按F12跳到SystemInit 中(包含在system_stm32f10x.c)

    4,函数前部分是一些复位配置还有一些调试方面的设置下面的SetSysClock();在这个函数里可以将系统时钟设置成不同频率(24.36.48.56.72)(包含在system_stm32f10x.c)

    5,底层驱动SetSysClockTo72 ;

    注意:

    #if defined (STM32F10X_LD_VL) || (defined STM32F10X_MD_VL) || (defined STM32F10X_HD_VL)
    /* #define SYSCLK_FREQ_HSE    HSE_VALUE */
     #define SYSCLK_FREQ_24MHz  24000000
    #else
    /* #define SYSCLK_FREQ_HSE    HSE_VALUE */
    /* #define SYSCLK_FREQ_24MHz  24000000 */
    /* #define SYSCLK_FREQ_36MHz  36000000 */
    /* #define SYSCLK_FREQ_48MHz  48000000 */
    /* #define SYSCLK_FREQ_56MHz  56000000 */
    #define SYSCLK_FREQ_72MHz  72000000
    #endif

    系统时钟开关(包含在system_stm32f10x.c中,110行左右)

  • 相关阅读:
    Linux
    CUDA开发
    Linux C++
    Python
    C++
    模式识别
    Linux
    算法
    算法
    leetcode 数组,链表,跳表
  • 原文地址:https://www.cnblogs.com/Ph-one/p/4083128.html
Copyright © 2011-2022 走看看