Stm32

  
 

Antes de dar el programa completo, es para la comodidad de los principiantes. Después de poner todas las funciones utilizadas por la función principal en la función principal, agregue la declaración de la función antes de la función principal. Esto hará que el archivo main.c no tenga jerarquía. Todas las funciones diluyen el código de la función en main.c.


La organización de archivos en un proyecto general es así: el archivo main.c solo contiene código que refleja la funcionalidad.

El archivo de encabezado main.c contiene solo dos

#include " stm32f0xx.h " #include " hw_config.h "


Las siguientes son macros definidas por el usuario. Estas macros también están estrechamente relacionadas con la función. Para decirlo sin rodeos, es utilizada por la función principal. Si no está directamente relacionada con la función, se puede definir en hw_config.h, como la definición de pines GPIO.

#define OE GPIO_Pin_5


La siguiente es la definición de la variable global, que también se define aquí en la función principal.



La siguiente es la función principal, su estructura es

void main (void) {//definiendo las variables locales utilizadas por la función principal //Inicializar variables globales y variables locales //hardware de inicialización, como RCC, NVIC, GPIO, TIM, USART, Systick, IWWDG, etc. //La siguiente es la implementación del código de función, generalmente while (1) structure. While (1) { }}


El archivo main.c contiene estos códigos. Las funciones llamadas por la función principal, como RCC_Configuration, NVIC_Configuration, GPIO_Configuration, SysTick_Configuration, USART_Configuration, etc., están declaradas en hw_config.h, en hw_configur.h Definido en .c.

Nota: dado que todas las funciones llamadas por la función principal están definidas en hw_config.c, algunas variables están obligadas a definirse en hw_config.c, y estas variables también se usan en el archivo main.c. Estas variables deben declararse externamente en hw_config.h. Entonces, incluso si stm32f0xx_it.c usa estas variables definidas en hw_config.c, solo necesita incluir el archivo de encabezado hw_config.h.

Tome una variable de conteo usart1_invalidframe_time como ejemplo, definido en hw_config.c, declarado con extern en hw_config.h, borrado en main.c (usart1 recibe datos para borrar la variable), en stm32f0xx_it La función .s SysTick_Handler se agrega cada 1 ms.


Copyright © Conocimiento de Windows All Rights Reserved