Análisis de la biblioteca de firmware STM32F4xx

Biblioteca de firmware STM32F4xx

La biblioteca de software estándar proporcionada por ST incluye la operación de control de todos los registros del chip STM32. Podemos aprender a usar la biblioteca estándar ST directamente, lo que facilita enormemente el desarrollo rápido.

  • Estructura de archivos de la biblioteca de firmware

    La estructura de archivos de la biblioteca de firmware expresa claramente la relación entre los archivos de la biblioteca de firmware, y vale la pena echar un vistazo más de cerca:
    Estructura de archivos de la biblioteca de firmware
  • La relación entre los estándares CMSIS y las bibliotecas

Antes de analizar la biblioteca de firmware, debemos entender qué es CMSIS y qué tiene que ver con la biblioteca de firmware.

Los núcleos utilizados en los chips de la serie Cortex son todos iguales, y la diferencia es principalmente la diferencia de los periféricos en el chip fuera del núcleo. Estas diferencias hacen que sea difícil trasplantar software en chips con el mismo núcleo y diferentes periféricos. Para resolver el problema de compatibilidad del software del microcontrolador Cortex producido por diferentes fabricantes de chips, los fabricantes de ARM y chips establecieron el estándar CMSIS (Estándar de interfaz de software del microcontrolador Cortex) -Estándar de interfaz de software del microcontrolador Cortex

Puede verse en la descripción que CMSIS es una capa de abstracción de software que protege las diferencias entre el mismo núcleo y diferentes chips periféricos para resolver el problema de portabilidad y compatibilidad del programa. De la siguiente manera:
Arquitectura CMSIS
CMSIS está relacionado con el núcleo, cualquier chip basado en estos núcleos necesita el soporte del núcleo para escribir programas, la librería de firmware también debe ser desarrollada en base a CMSIS.

Nota: Nota: Nota: Nota Italia: Las funciones del núcleo las proporciona ARM, principalmente los nombres y las definiciones de direcciones de algunos registros del núcleo; las funciones periféricas fuera del núcleo las proporciona el fabricante del chip, incluidas las direcciones de los periféricos externos y las definiciones de interrupciones.

La capa CMSIS se encuentra entre la capa de hardware y el sistema operativo o la capa de usuario. Proporciona una capa de abstracción de hardware que no tiene nada que ver con el fabricante del chip. Puede proporcionar una interfaz de software de procesador simple para periféricos de interfaz y sistemas operativos en tiempo real, protegiendo las diferencias de hardware. La migración de software es de gran beneficio

  • STM32F4xx_DSP_StdPeriph_Lib_V1.4.0 análisis de archivo real

    Esta vez se utiliza la biblioteca de firmware versión V1.4.0. De la siguiente manera:
    Directorio de la biblioteca de firmware
    como se puede ver en la figura anterior, las carpetas importantes en la biblioteca de firmware son Bibliotecas y Proyecto, y solo estas dos carpetas se analizan a continuación.
    • Bibliotecas

Hay dos archivos en la carpeta Bibliotecas: CMSIS y STM32F4xx_StdPeriph_Driver, primero mire el CMSIS:
Biblioteca de firmware CMSIS
   Carpeta del dispositivo: el archivo debajo de esta carpeta está directamente relacionado con el chip específico, incluidos los archivos de inicio, las definiciones de registro de periféricos del chip y las funciones de inicialización del reloj del sistema. Archivo proporcionado por la empresa ST.
CMSIS_Device

archivos stm 32 f 4 xx .hy system stm 32 f 4 xx .c archivos stm32f4xx.hy archivos system_stm32f4xx.c s t m 3 2 f 4 x x . h y s y s t e msT m . 3 2 F . 4 X X . C papel miembro
  stm32f4xx.h este documento es muy importante, es la parte inferior de un chip de STM32 documentos pertinentes; STM32 contiene toda la dirección del registro periférico y las definiciones de tipo de estructura, utilizando el STM32 estándar La biblioteca debe incluir este archivo de encabezado.
  El archivo system_stm32f4xx.c contiene funciones para inicializar el reloj del sistema y expandir la memoria externa después de que se enciende el chip STM32

   Incluir carpeta: contiene los archivos de encabezado común del núcleo Cortex-M ubicados en la capa de función del dispositivo del núcleo estándar CMSIS. Su función es proporcionar un chip periférico diseñado por los proveedores de chips que utilizan el diseño del núcleo Cortex-M SOC La interfaz del kernel define algunos registros relacionados con el kernel
CMSIS_Include

 core_cm4.h es un archivo muy importante para el núcleo M4, todas las bibliotecas de chips CM4 tienen este archivo; como el archivo de inicio, es un archivo de bajo nivel, que es proporcionado por ARM y cumple con el estándar CMSIS.

Mire de nuevo la carpeta STM32F4xx_StdPeriph_Driver:
STM32F4xx_StdPeriph_Driver
STM32F4xx_StdPeriph_Driver es un archivo de función de biblioteca escrito por ST para cada periférico STM32. Cada periférico corresponde a un archivo con un sufijo .cy .h.

  • Proyecto

Proyecto de biblioteca de firmware

archivos stm 32 f 4 xxit.cy stm 32 f 4 xxconf.h archivos stm32f4xx_it.cy stm32f4xx_conf.h s t m 3 2 f 4 x xyot . c y s t m 3 2 f 4 x xcO las piezas del archivo n- f . H
  stm32f4xx_it.c: Este documento está diseñado para escribir la función de servicio de interrupción antes de que modifiquemos este archivo, ya define algunas excepciones del sistema (interrupción especial) interfaz, el otro por nuestra función de servicio de interrupción común Agréguelo usted mismo. Pero, ¿cómo sabemos cómo escribir la interfaz de estas funciones de servicio de interrupción? ¿Se puede personalizar? La respuesta es, por supuesto, no, estos se pueden encontrar en el archivo de inicio del ensamblaje
  stm32f4xx_conf.h: este archivo se incluye en el archivo stm32f4xx.h. La biblioteca estándar ST admite todos los modelos de chips STM32F4, pero algunos modelos tienen más funciones periféricas, así que use este archivo de configuración para aumentar o disminuir los archivos periféricos de la biblioteca ST según el modelo de chip

Lo anterior es el análisis básico de la biblioteca de firmware STM32F4xx.

Supongo que te gusta

Origin blog.csdn.net/weixin_41629848/article/details/99692561
Recomendado
Clasificación