2024年3月23日发(作者:宫丁兰)
**这里是STM32比较重要的头文件 我愛你的吻123原創講解 QQ:1746430162
******************************************************************************
* @file stm32f10x.h ST 标准的头文件
* @author MCD Application Team 微控制器开发小组。
* @version V3.5.0 版本
* @date 11-March-2011 2011年3月11
* @brief CMSIS Cortex-M3 Device Peripheral Access Layer Header File.(CMSIS:Cortex
Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬
件抽象层。
* This file contains all the peripheral register's definitions, bits
* definitions and memory mapping for STM32F10x Connectivity line,
* High density, High density value line, Medium density,
* Medium density Value line, Low density, Low density Value line
* and XL-density devices.
* 这个文件包含了芯片STM32F10X(接口增强型)内部的寄存器定义,位定义,内存地
址变换定义,还有一些相应的高密度,低密度产品线的设备。
* The file is the unique include file that the application programmer
* is using in the C source code, usually This file contains:
* - Configuration section that allows to select:
* - The device used in the target application
* - To use or not the peripherals drivers in application
* code will be based on direct access to peripherals registers
* rather than drivers API), this option is controlled by
* "#define USE_STDPERIPH_DRIVER"
* - To change few application-specific parameters such as the HSE
* crystal frequency
* - Data structures and the address mapping for all peripherals
* - Peripheral's registers declarations and bits definition
* - Macros to access peripheral registers hardware
*这个文件在应用程序中是至关重要的头文件,它是用C代码编写而成。通常包括在MAIN
主程序中。它包括:1 设备中使用的目标应用程序。
2 决定是否使用外部设备的代码(例如使用基于寄存器的代码,而不是我们所熟悉的API
应用程序接口代码)。这一设备可以通过设置 "#define USE_STDPERIPH_DRIVER" 来实现。
3 通过这一文件可以改变诸如外部设备的频率参数。
4 可以了解程序的数据结构以及外设的地址映射。
5 外设的寄存器声明和位定义可以在这个文件里面了解到。
******************************************************************************
* @attention
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING
CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR
THEM TO SAVE
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR
ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY
CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY
CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR
PRODUCTS.
*注意:这一文件代码供应给用户,旨在帮助用户提升效率节约时间。ST将不会提供任何
对于用户自己代码的解释和帮助。也不会解决其在代码中的任何BUG。
*
© COPYRIGHT 2011 STMicroelectronics
******************************************************************************
*/
/** @addtogroup CMSIS
* @{
*/这个不需要关心,只是说明这个文件的作者,公司产品等等,你贴出来的估计是小小的
广而告之,这也是程序员的一点小小的特权嘛
/** @addtogroup stm32f10x
* @{
*/
#ifndef __STM32F10x_H//如果没有定义__STM32F10x_H ,则定义__STM32F10x_H
#define __STM32F10x_H
#ifdef __cplusplus//
extern "C" {
#endif
这里是一种条件编译。extern "C"指令非常有用,因为C和C++的近亲关系。注意:extern
"C"指令中的C,表示的一种编译和连接规约,而不是一种语言。C表示符合C语言的编译
和连接规约的任何语言,如Fortran、assembler等。
还有要说明的是,extern "C"指令仅指定编译和连接规约,但不影响语义。例如在函数声明
中,指定了extern "C",仍然要遵守C++的类型检测、参数转换规则。/** @addtogroup
Library_configuration_section
* @{
*/
/* Uncomment the line below according to the target STM32 device used in your
2024年3月23日发(作者:宫丁兰)
**这里是STM32比较重要的头文件 我愛你的吻123原創講解 QQ:1746430162
******************************************************************************
* @file stm32f10x.h ST 标准的头文件
* @author MCD Application Team 微控制器开发小组。
* @version V3.5.0 版本
* @date 11-March-2011 2011年3月11
* @brief CMSIS Cortex-M3 Device Peripheral Access Layer Header File.(CMSIS:Cortex
Microcontroller Software Interface Standard) 是 Cortex-M 处理器系列的与供应商无关的硬
件抽象层。
* This file contains all the peripheral register's definitions, bits
* definitions and memory mapping for STM32F10x Connectivity line,
* High density, High density value line, Medium density,
* Medium density Value line, Low density, Low density Value line
* and XL-density devices.
* 这个文件包含了芯片STM32F10X(接口增强型)内部的寄存器定义,位定义,内存地
址变换定义,还有一些相应的高密度,低密度产品线的设备。
* The file is the unique include file that the application programmer
* is using in the C source code, usually This file contains:
* - Configuration section that allows to select:
* - The device used in the target application
* - To use or not the peripherals drivers in application
* code will be based on direct access to peripherals registers
* rather than drivers API), this option is controlled by
* "#define USE_STDPERIPH_DRIVER"
* - To change few application-specific parameters such as the HSE
* crystal frequency
* - Data structures and the address mapping for all peripherals
* - Peripheral's registers declarations and bits definition
* - Macros to access peripheral registers hardware
*这个文件在应用程序中是至关重要的头文件,它是用C代码编写而成。通常包括在MAIN
主程序中。它包括:1 设备中使用的目标应用程序。
2 决定是否使用外部设备的代码(例如使用基于寄存器的代码,而不是我们所熟悉的API
应用程序接口代码)。这一设备可以通过设置 "#define USE_STDPERIPH_DRIVER" 来实现。
3 通过这一文件可以改变诸如外部设备的频率参数。
4 可以了解程序的数据结构以及外设的地址映射。
5 外设的寄存器声明和位定义可以在这个文件里面了解到。
******************************************************************************
* @attention
*
* THE PRESENT FIRMWARE WHICH IS FOR GUIDANCE ONLY AIMS AT PROVIDING
CUSTOMERS
* WITH CODING INFORMATION REGARDING THEIR PRODUCTS IN ORDER FOR
THEM TO SAVE
* TIME. AS A RESULT, STMICROELECTRONICS SHALL NOT BE HELD LIABLE FOR
ANY
* DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES WITH RESPECT TO ANY
CLAIMS ARISING
* FROM THE CONTENT OF SUCH FIRMWARE AND/OR THE USE MADE BY
CUSTOMERS OF THE
* CODING INFORMATION CONTAINED HEREIN IN CONNECTION WITH THEIR
PRODUCTS.
*注意:这一文件代码供应给用户,旨在帮助用户提升效率节约时间。ST将不会提供任何
对于用户自己代码的解释和帮助。也不会解决其在代码中的任何BUG。
*
© COPYRIGHT 2011 STMicroelectronics
******************************************************************************
*/
/** @addtogroup CMSIS
* @{
*/这个不需要关心,只是说明这个文件的作者,公司产品等等,你贴出来的估计是小小的
广而告之,这也是程序员的一点小小的特权嘛
/** @addtogroup stm32f10x
* @{
*/
#ifndef __STM32F10x_H//如果没有定义__STM32F10x_H ,则定义__STM32F10x_H
#define __STM32F10x_H
#ifdef __cplusplus//
extern "C" {
#endif
这里是一种条件编译。extern "C"指令非常有用,因为C和C++的近亲关系。注意:extern
"C"指令中的C,表示的一种编译和连接规约,而不是一种语言。C表示符合C语言的编译
和连接规约的任何语言,如Fortran、assembler等。
还有要说明的是,extern "C"指令仅指定编译和连接规约,但不影响语义。例如在函数声明
中,指定了extern "C",仍然要遵守C++的类型检测、参数转换规则。/** @addtogroup
Library_configuration_section
* @{
*/
/* Uncomment the line below according to the target STM32 device used in your